Download as pdf or txt
Download as pdf or txt
You are on page 1of 9

Computers & Industrial Engineering 65 (2013) 322–330

Contents lists available at SciVerse ScienceDirect

Computers & Industrial Engineering


journal homepage: www.elsevier.com/locate/caie

PSO with path relinking for resource allocation using simulation


optimization
M.S.R. Martins, S.C. Fuchs, L.U. Pando, R. Lüders ⇑, M.R. Delgado
Federal University of Technology – Paraná, Av. Sete de Setembro 3165, 80230-901 Curitiba, PR, Brazil

a r t i c l e i n f o a b s t r a c t

Article history: This paper proposes a PSO-based optimization approach with a particular path relinking technique for
Received 21 March 2012 moving particles. PSO is evaluated for two combinatorial problems. One under uncertainty, which repre-
Received in revised form 30 January 2013 sents a new application of PSO with path relinking in a stochastic scenario. PSO is considered first in a
Accepted 5 February 2013
deterministic scenario for solving the Task Assignment Problem (TAP) and hereafter for a resource allo-
Available online 19 February 2013
cation problem in a petroleum terminal. This is considered for evaluating PSO in a problem subject to
uncertainty whose performance can only be evaluated by simulation. In this case, a discrete event sim-
Keywords:
ulation is built for modeling a real-world facility whose typical operations of receiving and transferring
Particle swarm optimization
Discrete event simulation
oil from tankers to a refinery are made through intermediary storage tanks. The simulation incorporates
Task assignment uncertain data and operational details for optimization that are not considered in other mathematical
Oil industry optimization models. Experiments have been carried out considering issues that affect the choice of
parameters for both optimization and simulation. The results show advantages of the proposed approach
when compared with Genetic Algorithm and OptQuest (a commercial optimization package).
Ó 2013 Elsevier Ltd. All rights reserved.

1. Introduction parameters to adjust, and interesting results have also been ob-
tained with PSO for combinatorial optimization (literature has
Particle Swarm Optimization (PSO) is a technique developed by demonstrated it gets better results in a faster and cheaper way
Engelbrecht (2007), Kennedy and Eberhart (1995). It is inspired on when compared with other methods (Poli, 2008)). Two applica-
the behavior of birds in flocks where solutions to a given optimiza- tions are considered in this paper to emphasize these PSO proper-
tion problem, called particles, ‘‘fly’’ (like birds) through a multidi- ties. Results for both applications are compared with those
mensional search space. Similarly to Genetic Algorithms (GAs), obtained by a Genetic Algorithm-based approach. In the first part
PSO can be classified as a bio-inspired paradigm. PSO was first of experiments, PSO is considered in a simple scenario (the Task
developed for continuous optimization problems. However, re- Assignment Problem – TAP) where simulation and randomness
search of PSO applications for combinatorial optimization prob- are not present. In the second part, PSO is applied in a more com-
lems can be found in the recent literature (Wang, Cai, Zhou, plex scenario involving simulation whose results are also com-
Wang, & Li, 2011; Kennedy & Eberhart, 1997; Rosendo & Pozo, pared with those obtained by OptQuest (Kleijnen & Wan, 2007)
2010; Souza, Goldbarg, & Goldbarg, 2006; Hu, 2011). In discrete (a well-known and fully integrated optimization package of ARENA
spaces a technique named path relinking (Glover et al., 1999) can simulation framework (Kelton, Sadowski, & Sturrock, 2007)). Then,
be used to move a particle (solution) toward another one, generat- PSO should be adapted to solve a complex combinatorial problem
ing a path between the two solutions. subject to uncertain data. The proposed approach computes the fit-
This paper proposes a PSO-based optimization approach where ness according to an average performance measure obtained over a
a particular path relinking technique is adopted for moving parti- set of simulation replications. In this case, PSO is used to optimize
cles. Additionally, the PSO algorithm is modified to deal with ran- the utilization of piers and tanks in a complex petroleum terminal.
domness. In this case, simulation is used whenever the fitness of a Operational details and uncertain information are incorporated
particle cannot be captured by a simple computation. PSO has been into optimization.
chosen mainly due the fact that it is easy to implement with few There are two main contributions of this paper. The first is that
the PSO algorithm was modified to deal with combinatorial prob-
⇑ Corresponding author. Tel.: +55 41 33104688; fax: +55 41 33104683.
lems in scenarios of randomness whose results have only been re-
E-mail addresses: marcella_engcomp@yahoo.com.br (M.S.R. Martins), ste-
cently reported in the literature (Mukhef, Farhan, & Jassim, 2008;
fan1234@gmail.com (S.C. Fuchs), lucianourgal@hotmail.com (L.U. Pando), luders@ Jiao, Chen, & Yan, 2011). These modifications are related to: (i)
utfpr.edu.br (R. Lüders), myriamdelg@utfpr.edu.br (M.R. Delgado). introduction of the path relinking technique where a particle

0360-8352/$ - see front matter Ó 2013 Elsevier Ltd. All rights reserved.
http://dx.doi.org/10.1016/j.cie.2013.02.004
M.S.R. Martins et al. / Computers & Industrial Engineering 65 (2013) 322–330 323

encodes sets of same type resources of the application (previous The first version of PSO for discrete problems was presented in
approaches adopt this technique in other application contexts Kennedy and Eberhart (1997). In this work, Kennedy and Eberhart
(Rosendo & Pozo, 2010; Souza et al., 2006)) and (ii) analysis of path proposed an array of binary values to encode each particle. The
relinking for PSO subject to uncertain information (path relinking velocity is defined as an array of probabilities of changing from 1
has not been previously used in scenarios of randomness). The sec- to 0 and vice versa. In other words, if v tþ1 j ¼ 0:20, there is twenty
ond contribution was in the modeling. This includes (i) formalizing percent of chance that ptþ1 j will be one, and eighty percent of
the description of the purpose of the approach in a path relinking chance that it will be zero. If previous best positions  have
 had a
context, firstly by adapting the notation of combinatorial PSO ap- zero in the jth component (i.e. bestj = 0), then bestj  ptj can be
proaches when they use particles with permutation-based encod- reasonably calculated as 1 or 0 and used to weight a change in
ing and secondly, by redefining the velocity equation, especially the probability of v tþ1 j for the next step. Eq. (2) remains unchanged,
when the terms associated with inertial, cognitive and social com- except that now each value considered in the jth component is an
ponents are presented and (ii) a real-world facility that incorpo- element of {0, 1} and v tþ1 j must be constrained into the interval of
rates uncertain data is modeled and operational details which are probability [0.0, 1.0]. This way, the dimension of a particle move-
not considered in other mathematical optimization models are ta- ment can be seen as the number of bits changed from one iteration
ken into account for optimization. to another in a binary search space. A particle does not move if no
The paper is organized as follows. Section 2 presents details bit is toggled, whereas it executes a full movement if all bits are
about PSO and its implementation. The addressed problems are de- toggled.
scribed in Section 3. Section 4 presents our proposed simulation In Rosendo and Pozo (2010) and Souza et al. (2006), a technique
model and optimization approach. Results are shown in Section 5 named path relinking is used to move a particle toward another
followed by conclusions in Section 6. one. Path relinking is an intensification technique whose idea
was originally proposed by Glover in the context of scheduling
2. Particle Swarm Optimization (PSO) methods with better decision rules for job shop problems (Glover
et al., 1999). Generally speaking, this strategy generates a path be-
The particle swarm algorithm adjusts trajectories of a popula- tween two solutions. Assuming a source solution pt and a destina-
tion of particles through a problem space using information about tion solution pt+1, a path is a sequence of changes (steps) pt0,
each particle’s best performance and the best performance of its pt1, . . . , ptm with pt = pt0 and ptm = pt+1 such that pt(k+1) is obtained
neighbors. from ptk by using movements that reduce the distance between
Consider a particle (candidate solution) positioned in the search source and destination. This idea is used in some of the literature
space RD at current discrete time t represented by a vector with discrete spaces to redefine velocity in terms of two particles
  pa and pb such that v = pa  pb or pa = pb + v, i.e., by applying v to pb
pt ¼ pt1 ; pt2 ;    ; ptD . The
 particle pt is moved, by a velocity vector
v tþ1 ¼ v tþ1 ;    ; v tþ1
, to a new position pt+1 according to the fol- results in pa. This technique is used in our proposed optimization
1 D
lowing equation: approach according to Rosendo and Pozo (2010), but using a
particular notation suitable to represent permutations. The
ptþ1 ¼ pt þ v tþ1 : ð1Þ main contribution is a well-defined procedure for applying a
list of permutations in the elements of a particle in terms of its
Usually, each element of the velocity vector is updated by iner-
inertial, cognitive and social components as described in the next
tial, cognitive and social components as defined by the following
section.
equation:

v tþ1
j ¼ w  v tj þ ðc1 r1 Þ  v tjðcognÞ þ ðc2 r 2 Þ  v tjðsocialÞ ; ð2Þ
2.1. The proposed PSO-based approach
where v t
j is
taken from
 the current velocity (or inertial component),
v tjðcognÞ ¼ bestj  ptj corresponds to the cognitive component with In our proposed approach each particle in the swarm is repre-
bestj taken from thecurrent best position achieved so far by the par- sented by a list of values indicating a resource allocation for the

ticle, and v tjðsocialÞ ¼ bestjðglobalÞ  ptj corresponds to the social com- problem being optimized, and velocity is represented by a list of
ponent with bestj(global) taken from the current best position permutations of elements necessary to move pt toward pt+1. The
achieved so far by the whole swarm. The coefficients w, c1 and c2 movement is based on the following equation:
define how much a particle trust in its previous movement (inertial ptþ1 ¼ v tþ1 ðpt Þ; ð3Þ
component), own history (cognitive component) and in the whole
t+1
set of particles (social component), respectively (Engelbrecht, where the velocity v is an operator represented by a list of pairs of
2007). The terms r1 and r2 are random numbers drawn from an uni- indexes indicating which elements of pt should be swapped. For
form distribution. The PSO algorithm initiates with a randomly gen- example, assuming pt = (11, 22, 33, 44, 55) and vt+1 = {(1, 2), (2, 3)},
erated swarm (position and velocity’s particle) which is then then pt+1 = vt+1((11, 22, 33, 44, 55)) = (22, 33, 11, 44, 55).
updated for each iteration t (bestj is updated for each particle By considering the path relinking technique previously
and bestj(global) for the whole swarm). When a maximum of T itera- discussed, lets define how a particle pt = (22, 33, 11, 55, 44) is
tions is reached, the best solution is bestglobal = (best1(global), . . . , moved to pt+1 = (11, 22, 33, 44, 55) using a list of three
 
bestD(global)). permutations. Consider v tþ1 ¼ v tþ1 1 ; v2 ; v3
tþ1 tþ1
and a path pt0,
t1 t2 t3
Compared to other Evolutionary Algorithms (EAs), PSO presents p , p , p such that p tðkþ1Þ
¼ v kþ1 ðp Þ; k ¼ 0; 1; 2. As
tþ1 tk

some advantages such as easy implementation and few parameters ptþ1


1 ¼ pt3 ¼ 11, v tþ1
1 ¼ ð1; 3Þ and pt1 = (11, 33, 22, 55, 44). Simi-
to adjust. PSO has been successfully applied in many areas: non- larly, v tþ1
2 ¼ ð2; 3Þ; pt2 ¼ ð11; 22; 33; 55; 44Þ, v tþ1 3 ¼ ð4; 5Þ and pt3 =
t+1
linear optimization, artificial neural network training, fuzzy con- (11, 22, 33, 44, 55). Hence, v = {(1, 3), (2, 3), (4, 5)}. Although using
trol, and other areas where EA can be applied. Mostly PSO gets bet- an integer encoding, a binary encoding is straightforward.
ter results with less computational effort when compared with This procedure can be generalized by considering the inertial,
other methods (Hu, 2011). Although PSO was first developed for cognitive and social components in the following order (bc stands
continuous optimization problems, interesting results have also for floor and jj for cardinality):
been obtained for combinatorial optimization. In most cases, the
original equations are maintained. 1. u = bw  jvtjc permutations for the inertial component vt;
324 M.S.R. Martins et al. / Computers & Industrial Engineering 65 (2013) 322–330
j  k
 
2. q ¼ ðr1 c1 Þ  v tðcognÞ  permutations for the cognitive component real-world facility considered in this paper (terminal GEBAST) is lo-
v ðcognÞ necessary to move pt toward the best position achieved so
t
cated at State of São Paulo and managed by Petrobras (the Brazilian
far by j the particle;
 k oil company).
 
3. s ¼ ðr 2 c2 Þ  v tðsocialÞ  permutations for the social component There are several papers in the literature dealing with schedul-
v tðsocialÞ necessary to move pt toward the best position achieved ing the distribution of downstream products. Most of them con-
so far by the whole swarm. sider mathematical optimization models with deterministic data
(Más & Pinto, 2003; Boschetto, Magatão, Brondani, Neves, & Arru-
Velocity is then defined by the following equation: da, 2010; Magatão, Arruda, & Neves, 2004; Relvas, Matos, Barbosa-
n o Povoa, Fialho, & Pinheiro, 2006). An optimization model based on
v tþ1 ¼ v tþ1
1 ;    ; v u ; v ðuþ1Þ ;    ; v ðuþqÞ ; v ðuþqþ1Þ ; . . . ; v ðuþqþsÞ
tþ1 tþ1 tþ1 tþ1 tþ1
; ð4Þ mixed integer linear programming (MILP) has been proposed in
Más and Pinto (2003) for scheduling of oil supply in distribution
where the number of permutations u, q and s are affected by the complexes. However, it avoids many details of terminal operation
coefficients w, c1 and c2. These coefficients define how many per- as well as uncertainty information which is due to variability of
mutations of each component will be applied. If u, q and s are great- tanker arrival times and anchoring services (Asperen et al., 2003;
er than the corresponding component cardinality, the whole list of Gambardella and Rizzolli, 2000). Simulation is then suitable to cap-
permutations is applied as many times as necessary, as described in ture such complex behavior (Mori et al., 2007; Cafaro, Cafaro, Men-
Rosendo and Pozo (2010). dez, & Cerda, 2011). In addition, if an optimization algorithm is
integrated into simulation for evaluating different scenarios, a cost
3. Problem description function can be used to determine an optimal set of decision vari-
ables. In this paper, we are interested in finding good solutions for
This section presents two combinatorial problems to be solved the allocation of piers and tanks that maximize the terminal profit.
by PSO. Section 3.1 presents the Task Assignment Problem (TAP) The application of simulation and optimization techniques in a un-
which will be used to compare PSO with Genetic Algorithm (GA). ique framework is relatively recent (Zeng & Yang, 2009). It has be-
Section 3.2 presents the resource allocation problem in a terminal come widespread as different suppliers of simulation software
which needs simulation for fitness evaluation. This application have offered it as part of their simulation packages. For instance,
considers a combinatorial problem in a stochastic environment AutoStat, OptQuest, OPTIMIZ, SimRunner and WITNESS Optimizer
which is suitable to investigate the performance of PSO when com- have already been incorporated into commercial simulation pack-
pared with GA and OptQuest. ages (Olafsson & Kim, 2002). This fact has contributed to increase
the popularity of simulation optimization approach which is grow-
3.1. Task assignment problem ing in the business field and has been shown quite effective in re-
cent years (Fu, 2002).
The Task Assignment Problem (TAP) can be described as the The problem considered in this paper aims to find a suitable set
problem of allocating resources to tasks where each resource is of piers and tanks to be used for receiving crude oil and transfer-
allocated to a single task and all tasks receive a resource. Consider ring it to the refinery with a maximum profit. This profit is affected
a set W of resources being allocated to a set K of tasks. Each re- by many variables. For example, as tankers transport different
source i is allocated to a single task j with cost cij. This can be rep- types of oil with different qualities, an eventual mixture in storage
resented by the mathematical model (5) where a binary variable xij tanks can reduce the refinery revenue. Similarly, if a delay occurs in
assumes 1 if resource i is allocated to task j, and 0 otherwise. an unloading operation, a penalty is imposed to the terminal.
XX Moreover, it should be noted that tankers have an arrival schedule
Minimize xij cij that can be perturbed by factors such as trip delays and anchoring
i2W j2K troubles caused by adverse weather conditions. A solution to this
X
subject to xij ¼ 1; 8i 2 W; problem should then consider the stochastic nature of tankers’
j2K ð5Þ arrivals. Consequently, we assume an average monthly profit as
X
xij ¼ 1; 8j 2 K; the optimization criterion.
i2W The terminal profit is calculated during a simulated time hori-
xi;j 2 f0; 1g; 8i 2 W; 8j 2 K: zon according to the following equation:

If the total number of resources jWj is equal to the total number Profit ¼ Iref term tanker
oil þ I oil  C oil  C pier  C over  C interf ; ð6Þ
of tasks jKj = D, then the resulting allocation is a permutation of D
distinct elements. where Iref
oil is the income resulting from the amount of oil processed
This problem has been chosen because it is a combinatorial by refineries, Iterm is the income from the final amount of oil stored
oil
problem which generates a search space that grows rapidly with in terminal, C tanker is the cost of oil remaining on tankers, Cpier is the
oil
the number of tasks. Moreover, feasible solutions can easily be cost of piers, Cover is the total over stay cost due to exceeding delays
generated as well as fitness evaluation for evolutionary optimiza- in tankers unloading, and Cinterf is the total cost of interfacing differ-
tion algorithms. Therefore this problem can be made as complex ent oil classes.
as necessary for comparing PSO with other meta-heuristics in The income Iref oil from refinery processing is given by the follow-
combinatorics. ing equation:
X ref X unloaded
3.2. Resource allocation in a terminal Iref
oil ¼ Pl V l;t ; ð7Þ
l2L t2T l
Downstream in oil industry concerns petroleum refining and
product distribution. It includes a logistic of crude oil transport where L is the set of oil classes, Tl is the set of tanks that are able to
by tankers using a terminal as intermediary storage area for subse- store oil of class l; P ref
l is the price of oil class l per volume in refin-
quent oil transferring to refineries. In general, a terminal contains ery, and V unloaded
l;t is the volume of oil class l unloaded from tank t.
piers, storage tanks and pipelines where oil is transferred from The income Itermoil resulting from oil left in the terminal is defined
tankers to tanks and from tanks to refineries afterwards. The according to the following equation:
M.S.R. Martins et al. / Computers & Industrial Engineering 65 (2013) 322–330 325

X term X final
Iterm
oil ¼ Pl V l;t ; ð8Þ These constraints are implemented in the simulation model
l2L t2T l (Section 4.1) as logical decisions taken over the flow of events gen-
erated since tanker arrival until oil delivery at refineries.
where Pterm
l is the price of oil class l per volume in terminal and V final
l;t
is the final volume of oil class l in tank t. 4. PSO-based simulation optimization
The cost C tanker
oil of oil remaining in tankers is defined by the fol-
lowing equation: The allocation for both problems is provided by PSO. Algorithm
X tanker X final 1 illustrates the general steps performed by the PSO implementa-
C tanker
oil ¼ Po V o;k ; ð9Þ
o2O k2K o
tion used in this work.

where O is the set of oil types, Ko is the set of tankers that can store Algorithm 1. The implemented discrete PSO algorithm
oil of type o; Ptanker
o is the price of oil type o per volume in tankers
and V final
o;k is the final volume of oil type o in tanker k. 1: Initialize the swarm with N random particles
The cost Cpier associated with pier utilization is defined by the
2: t = 1
following equation:
3: while t 6 T do
X X pier
C pier ¼ Cp Dk;p ; ð10Þ 4: Evaluate each particle fitness by simulation (using n
p2P k2K p replications)
5: Update the best solution achieved so far by the swarm
where P is the set of piers, Kp is the set of tankers that can anchor at (bestglobal)
pier p, Cp is the cost of using pier p per time unit and Dpier
k;p is the time 6: for each particle do
pier p is used by tanker k. 7: Update the best solution achieved so far by the particle
The total over stay cost Cover is defined by the following (best)
equation: 8: Calculate a new velocity for the particle (Eq. (4))
X
C over ¼ C k Dover ; ð11Þ 9: Move the particle toward a new position (Eq. (3))
k
k2K 10: end for
11: t = t + 1
where K is the set of tankers, Ck is the over stay cost of tanker k per 12: end while
time unit, and Dover
k is the over stay time of tanker k.
Finally, the cost Cinterf of interfacing different oil classes is calcu-
lated according to the following equation: PSO computes a swarm of N solutions (or particles) for each
XX iteration using a total of T iterations. The fitness of each solution
C interf ¼ Nl;l0 ;pp C interf
l;l0 ; ð12Þ
is obtained by the average fitness over n simulation replications.
pp2PPl;l0 2L
In this paper, the term iteration is used to designate each PSO
where PP is the set of pipelines, Nl;l0 ;pp is the number of interfaces be- swarm update and replication refers to an entire system simula-
tween classes l and l0 generated in pipeline pp and C interf
l;l0 is the inter- tion executed for a single solution but using a different sample of
face cost between classes l and l0 . random variables. Hence, (n  N) systems simulations will be exe-
In addition, transfer operations are subject to several cuted for each iteration. As PSO is randomly initialized, it is neces-
constraints: sary to run it more than once to get an overall performance
measure. Each run of pseudo-code 1 with a different random ini-
1. When a tanker approaches a terminal, a time window is estab- tialization is considered a round r, r = 1, . . . , R. Therefore,
lished. It specifies a time interval within which the tanker (n  N  T  R) systems simulations will be executed in the whole
should anchor, unload and leave the terminal. Any extra delay process. In TAP, as we consider a deterministic scenario, n = 1.
is overcharged. Moreover, no simulation is necessary as fitness is easily defined
2. Not all piers are able to receive all tankers. A tanker can only based on a table with costs.
anchor at piers with proper capacity. Big piers can receive any
Initial swarms for both, TAP and the terminal resource alloca-
kind of tankers, but they are more expensive. On the other hand,
tion problem, are randomly generated. The restriction for TAP is
small and cheaper piers can only receive small tankers.
that each particle encodes a permutation of D distinct elements
3. A single pier is allocated for unloading the whole tanker load
whereas for the terminal, restrictions 2–4 (as described in Sec-
even if there is more than one oil type.
tion 3.2) are considered for pier capacity and oil type. In this work,
4. A tanker can only unload oil into a tank with the same oil class.
binary variables are used as decision variables for the terminal and
Petrobras deals with several types of oil which are grouped into
a permutation of D distinct elements for TAP. Both representations
seven classes (l-1 to l-7) according to their specification. Crude
are changed based on path relinking approach as described in
oil of same class can be mixed without loss of properties.
Section 2.1.
5. Tanks cannot be loaded and unloaded at the same time and can-
The particle encoding adopted for allocation of piers and tanks
not be simultaneously loaded by more than one tanker.
is illustrated in Table 1. For example, according to the first row
6. A tank can only be unloaded after 24 h from the last loading
of Table 1, a tanker with id = 1 should anchor at pier 4 and unload
operation. This operation is necessary for decanting any salt
water mixed with the oil.
7. A tank can be ready, loading, unloading or decanting. It is con- Table 1
sidered ready when any operation can be initiated. It is loading Example of solution encoding for two oil loads.
when receiving crude oil from a tanker and unloading when Oil Pier Tank
sending oil to a refinery. It is decanting within a period of
id 1 2 3 4 TQ3208 ... TQ3244
24 h for salt water decanting.
1 0 0 0 1 1 ... 1
8. Crude oil is pumped from a tank to a refinery using a single
2 0 0 1 0 0 ... 1
pipeline whose throughput is defined by the respective oil class.
326 M.S.R. Martins et al. / Computers & Industrial Engineering 65 (2013) 322–330

Fig. 1. Block diagram for simulation optimization.

oil into tanks TQ3208 and TQ3244 (assuming 0 in other columns). decanting time of 24 h. Time delay tload is computed for each load-
If more than one oil id is carried by the same tanker, the same pier ing operation according to the following equation:
should be allocated. A vector representation for a particle is ob-
V loaded
tained by putting side by side each row of Table 1 with 1 indicating tload ¼ þ 24h; ð13Þ
allocated resource and 0 otherwise. Only permutations among the TP pier
same type of resources within same oil id are allowed. It means
where Vloaded is the loaded oil volume, and TPpier is the oil through-
that resource allocation can be viewed as a decoupled problem
put from pier to tank. Additionally, a variable status is defined. It as-
regarding tanks and piers for different oil ids.
sumes status = 0 for an empty tank, status = 1 for a full tank and
status = 2 for pumping oil into a pipeline. This variable is used for
controlling which tank is available for receiving or sending oil.
4.1. Simulation model for the petroleum terminal After 24 h of decanting, oil in a tank is pumped into a pipeline if
available. This operation is represented by block PIPELINE which
Daily activities in a terminal can be seen as a sequence of oper- decides which pipeline should be used according to the operational
ations which can be properly captured using a discrete event sim- constraints and computes the time necessary for unloading the
ulation. Our proposed simulation was implemented in Arena 12.0 whole tank oil according to the following equation:
and contains five blocks: TANKER, PIER, TANK, PIPELINE and REFIN- V unloaded
ERY as depicted in Fig. 1. tunload ¼ ; ð14Þ
TPpipe
They represent the sequence of events generated after a tanker
arrival. An event anchoring is generated for requesting a pier fol- where Vunloaded is the oil volume stored in the tank and TPpipe is the
lowed by an event loading to start loading oil into a tank. An pipeline throughput.
event unloading is then generated for sending oil to a pipeline. The unloaded oil is consumed at the refinery during a time tcons
The final event transfer updates the amount of oil processed in computed according to the following equation:
the refinery. All events occur as soon as possible, except the tanker
arrival event which is generated by a random process. According to V unloaded þ V ref
stored
tcons ¼ ; ð15Þ
Fig. 1, the sequence of events is enclosed in a box indicating that Rcon
simulation replications should be executed to compute statistics
where V ref
stored is the oil volume already stored in refinery and Rcon is
of the cost and profit used as fitness for the optimization block.
the consumption rate. Blocks PIPELINE and REFINERY implement a
Note that allocation of piers and tanks is provided by the optimiza-
very simple model for transferring oil between terminal tanks and
tion block using an iterative process in a simulation–optimization
refinery through a pipeline. Flow dynamics in pipelines are not con-
cycle.
sidered and these blocks only compute the time necessary for trans-
Block TANKER generates an entity for each tankers’ arrival using
ferring and consuming oil according to the pipeline throughput and
different arrival processes (see Section 5). The input data (shown in
refinery demand.
Table A.10) is then read from a file containing oil load (class, vol-
ume, and cost), over stay cost, oil throughput, and anchoring time.
They are attributes of entities in the simulation model. The next 5. Results
block PIER seizes the corresponding pier and starts a time counter
for computing pier cost. If the allocated pier is not available for This section presents results for the problems considered in Sec-
anchoring, oil loading in block TANK is delayed until this pier is tions 3.1 and 3.2 - TAP and terminal allocation problem, respec-
free. tively. We aim to compare PSO with a traditional bio-inspired
Oil loading is started as soon as possible and the corresponding optimization approach (GA) for both problems. TAP concerns a
pier is released after all tanker load is unloaded (including all oil deterministic scenario without simulation whereas in the terminal
types). This policy is adopted for the whole simulation, i.e, opera- allocation problem we are interested on emphasizing the simula-
tions that utilize shared resources must wait for free resources tion optimization approach. It is important for optimizing a com-
which start operations as soon as possible. Oil loading operations plex problem whose performance can only be evaluated by
are modeled in block TANK as delays representing the time neces- simulation. In this case, PSO is also compared with OptQuest (a
sary for transferring a particular oil load from a tanker plus a commercial optimization package).
M.S.R. Martins et al. / Computers & Industrial Engineering 65 (2013) 322–330 327

5.1. Results for the task assignment problem tics (Demsar, 2006). Due to a non-normality characteristic of the
data, we chose the non-parametric Mann-Whitey rank sum statis-
Our PSO-based approach is compared with the Genetic Algo- tical test (Gibbons, 1985) with a 95% confidence level. It evaluates
rithm implementation from GAlib (Wall, 2012) for solving TAP. Ta- the null hypothesis H0 (there is no statistical difference between
ble 2 shows the parameters used in all experiments. the approaches). According to the p-values shown in Table 3, H0
A set of values in the third column of Table 2 means that the should be rejected with 95% confidence in all three cases (p-values
corresponding parameter is tested for each value in the set. Best are lower than 0.05). The approaches are thus different with GA
values in the set (i.e., those providing best costs) are emphasized outperforming PSO in the first case and vice versa in the last two
in bold face. Two types of crossover are tested for GA: Order1 cases (i.e., PSO may get better results for a more complex problem).
and Edge Recombination Crossover. Order1 Crossover is a fairly sim- The best values are emphasized in bold. Note that GA requires
ple permutation operator. Basically, a swath of consecutive alleles more computational time than PSO and our approach may thus
from parent 1 drops down, and remaining values are placed in the provide a better solution in less time.
child in the same order appearing in parent 2. Edge Recombination
Crossover (ERC) is a crossover technique for permutation (ordered) 5.2. Results for the terminal resource allocation
chromosomes. It tries to introduce shorter paths.
In this section, we define the same number of fitness evalua- This section presents the results obtained by integrating the
tions for both algorithms. This strategy was chosen to enable both proposed simulation model (for the petroleum terminal) with the
algorithms having the same number of trials to find out a solution PSO optimization algorithm. Experiments have been carried out
while keeping the computational time within acceptable limits for with input data for tankers, tanks, piers, oil and interface costs as
practical applications. presented in Tables A.10–A.14 of Appendix A, respectively. The
Table 3 shows the results obtained with the best set of param- considered terminal has four piers, eighteen tanks, and two pipe-
eters emphasized in Table 2 for each approach. They are presented lines (OSBAT and OSVAT) connecting two refineries. Thirteen tank-
in terms of average values calculated over R = 30 rounds for cost ers transport fourteen different oil types. Three tankers transport
P
AvCost, distance to the optimum OptAv Dist ¼ ð1=RÞ r ðBestr  more than one oil type.
OptÞ=OptÞ, r = 1, . . . , R, and run time Time. The optimum Opt for Three arrival processes called M1, M2 and M3 are considered
each TAP instance is indeed a reference value for the best cost for tanker arrivals. Process M1 is represented by a deterministic
achieved by an ideal and huge swarm with a total of 400,000 par- schedule composed by fixed arrival times as described in Más
ticles that performs MaxEval = 109 evaluations. and Pinto (2003) and shown in Table A.10 for each tanker. It was
The last column of Table 3 compares PSO and GA in terms of the only used as a verification step for the proposed simulation model.
percentage of relative difference and p-value associated with the Though it is not shown here, the same profit of Más and Pinto
statistical analysis. The comparison of algorithms is made through (2003) was obtained by simulation for the same allocation of piers
a recognized statistical methodology for comparing meta-heuris- and tanks. Models M2 and M3 are both based on stochastic pro-
cesses described in Asperen et al. (2003). M2 is characterized by
applying a Gaussian disturbance to M1, and M3 is a process with
exponentially distributed time between tanker arrivals (Kia, Sha-
Table 2
Parameters for TAP. yan, & Ghotb, 2002). Additionally, two different values (3 and
30 h) are considered for the standard error of M2.
Approach Parameter Tested value
Table 4 contains the parameters used for simulation and opti-
PSO Inertial coefficient (w) 0.0 mization. Remembering that a set of values in the second column
Cognitive coefficient (c1) {0.5, 0.85, 0.9, 0.95, 1, 1.2, 1.5, 1.8,
of Table 4 means that the corresponding parameter is made equal
2.0}
Social coefficient (c2) {0.1, 0.2, 0.3, 0.5, 0.85, 0.9, 0.95, 1, to each value in the set as described in the following sections. The
1.2, 1.5} remaining parameters are fixed according to standard values de-
Swarm size (N) 10,000 scribed in the literature (Banks, Vincent, & Anyakoha, 2007; Banks,
Vincent, & Anyakoha, 2008).
GA Mutation rate {0.05, 0.1, 0.15}
Crossover rate {0.5, 0.6, 0.7, 0.8, 0.82, 0.85, 0.9}
Crossover type {Order1, ERC} 5.2.1. Tuning of parameters for simulation optimization
Substitution rate {0.9, 0.95} There are several parameters in simulation optimization that
Population size (N) 10000 should be considered. However, as we could note in the previous
Both Rounds (R) 30 section, one of the reasons why PSO is an attractive solution for
Problem dimension (D) {10, 50, 100} optimization problems is that no great effort is necessary for
Maximum evaluations 20  106
(MaxEval)
parametrization and few adjustments are sufficient for a wide
range of applications (Hu, 2011). In this section, a phase of testing

Table 3
Results for different dimensions of TAP.

Dimension Opt Criteria PSO GA Comparison (PSO  GA)


D = 10 5 AvCost 5.83 5 Difference = 14.2%
OptAvDist 0.167 0.0 p-Value = 1.77  109
Time (s) 31.48 3276.5 –
D = 50 3 AvCost 3.93 9.47 Difference = 141%
OptAvDist 0.311 2.156 p-Value = 2.28  1011
Time (s) 134.61 4690.3 –
D = 100 1 AvCost 6.57 8.23 Difference = 25.3%
OptAvDist 5.810 7.233 p-Value = 0.01
Time (s) 332.4 6250.0 –
328 M.S.R. Martins et al. / Computers & Industrial Engineering 65 (2013) 322–330

Table 4 Table 7
Parameters for simulation optimization. Pier and tank allocation for 10 and 50 simulation replications.

Parameter Value Arrival Tanker Pier Tank


Swarm size (N) 10 n = 10 n = 50 n = 10 n = 50
Inertial coefficient (w) 1
M2 (3 h) 1 3 3 14, 15 9, 15
Cognitive coefficient (c1) 2
2 (oil1) 4 3 4, 5 4, 5
Social coefficient (c2) {2, 4}
2 (oil2) 4 4 6, 7 6, 11
PSO rounds (R) 10
5 3 4 16, 17, 18 16, 17, 18
Simulation replications (n) {10, 50, 2500}
6 1 1 11, 5, 14 12, 5, 14
PSO iterations (T) {200, 1000}
M2 (30 h) 2 2 2 4, 11 4, 5
4 (oil1) 2 3 15, 16 3, 4
4 (oil2) 2 3 1, 2, 3 1, 2
is used to determine good choices for the PSO social coefficient (c2), M3 4 1 1 2, 3 15, 16
number (T) of iterations and number (n) of simulation replications. 4 1 1 1 2, 3
9 2 2 7 4
As c2 can increase or decrease interactions between particles, it can
13 1 1 4 9, 4
be associated with T to control algorithm convergence. A small
number of iterations and replications yields to less computational
effort. Although other parameters can be tested, only c2, T and n are
investigated for the terminal allocation problem. In our opinion, Table 8
they are the ones with significative influence in a good compro- Comparing PSO with GA and OptQuest.
mise between solution quality and computational cost for a small
Arrival Result GA OptQuest PSO
swarm.
Best profit 168101.34 168692.01 169045.21
Each fitness shown in Table 5 is the best fitness obtained, for
Average profit 167697.22 168284.39 168990.24
different arrival processes, from individuals of all simulation repli- M2/3 h Variance 255.69 242.05 99.19
cations, iterations and rounds. It means that using less computa- Mean comput. time 2h 1 h 20 min 1 h50 min
tional effort (T = 200 iterations) similar profits are achieved by
increasing c2 from 2 to 4. Hence, c2 = 4 and T = 200 will be set for Kruskal Wallis test: p-value = 0.00000409

the rest of this section. Best profit 176201.43 178403.66 178563.23


During the evolutionary process of PSO, the fitness of each par- Average profit 175938.65 177936.34 178349.01
M2/30 h Variance 311.44 192.69 118.26
ticle in the swarm is determined by the average profit from n sim- Mean comput. time 2h 1 h 15 min 1 h 50 min
ulation replications. Though it is well-known that confidence
intervals reduce by increasing the number of simulation replica- Kruskal Wallis test: p-value = 0.00000577
tions, the proposed PSO algorithm does not use these intervals Best profit 169236.85 166149.45 169365.12
for comparing fitness. Therefore, PSO might only be affected by Average profit 168930.13 165825.58 169086.62
the number of simulation replications if the average profit would M3 Variance 239.07 218.87 147.29
Mean comput. time 2h 1 h 20 min 1 h 50 min
be affected as well. Table 6 shows the fitness of the best individual
for different tanker arrivals and number of simulation replications. Kruskal Wallis test: p-value = 0.0000413
Note that there is no remarkable difference between fitness ob-
tained for 10 and 50 replications even considering different arrival
processes. It means that the PSO evolutionary process behaves in a
Table 9
similar manner for 10 and 50 simulation replications by converg-
Profit for 2500 simulation replications with 95% confidence level.
ing almost to the same fitness.
Table 7 nevertheless shows different allocations of piers and Arrival Approach Profit Difference (from PSO) (%)
tanks for different values of n. Only tankers with different pier or M2/3 h GA 169091.56 ± 285.67 1.07
tank allocations for n = 10 and n = 50 are shown in Table 7 (differ- PSO 170894.67 ± 186.4 0.45
OptQuest 170123.78 ± 113.6
M2/30 h GA 177003.2 ± 268.54 1.9
PSO 180378.9 ± 89.7 0.48
OptQuest 179511.4 ± 98.3
Table 5
Fitness of the best individual for different c2 and T. M3 GA 170198.9 ± 336.18 0.86
PSO 171665.2 ± 200.7 2.43
Arrival Fitness OptQuest 167596.3 ± 198.3
(c2 = 2, T = 1000) (c2 = 4, T = 200)
M2/3 h 169281.78 169203.52
M2/30 h 179756.43 179018.12 ences are emphasized in bold). This could indicate a multimodal
M3 169501.89 169372.08 problem where different allocations yield a similar fitness value.
As n = 10 replications show no great difference in terms of fit-
ness, but the solution differs in terms of allocation of piers and
tanks for n = 50, a conservative choosing is n = 50 replications.
Table 6
Fitness of the best individual for 10 and 50 simulation replications.

Arrival Fitness
5.2.2. Comparing PSO with GA and OptQuest
In this section, the proposed PSO approach is compared with a
n = 10 n = 50
GA-based approach adapted from VBGALIB (2012), and the com-
M2/3 h 168900.13 169045.21 mercial package OptQuest.
M2/30 h 178422.25 178563.23
OptQuest is an optimization package incorporated into ARENA
M3 168189.13 169365.12
that utilizes Neural Networks (NN) and the meta-heuristics Tabu
M.S.R. Martins et al. / Computers & Industrial Engineering 65 (2013) 322–330 329

Table A.10
Tanker data.

Tanker Oil Arrival time Departure time Oil volume Over stay cost Oil throughput Pier approaching time Oil cost (unit/
type (h) (h) (103 m3) (unit/h) (103 m3/h) (h) 103 m3)
k-1 o-05 0 48 106 0.8333 8 0.5 116.9811
k-2 o-08 12 60 38 0.4167 8 0.5 109.7484
o-27 12 60 20 0.4167 8 0.5 109.7484
k-3 o-38 24 72 30 0.4167 8 0.5 100.6289
k-4 o-01a 48 96 70 0.8333 8 0.5 114.7798
o-01b 48 96 50 0.8333 8 0.5 114.7798
k-5 o-38 72 120 92 0.8333 8 0.5 116.9811
k-6 o-26 96 144 135 1.6667 8 0.5 116.9811
k-7 o-29a 97 144 80 0.8333 8 0.5 114.7798
o-29b 97 144 30 0.8333 8 0.5 114.7798
k-8 o-A 1 49 15 0.8333 8 0.5 115.0943
k-9 o-B 49 95 60 0.8333 8 0.5 100.6389
k-10 o-C 60 104 18 0.8333 8 0.5 100.6389
k-11 o-D 65 119 60 0.8333 8 0.5 109.7484
k-12 o-B 120 144 30 0.8333 8 0.5 113.3758
k-13 o-E 144 165 60 0.8333 8 0.5 116.9811

Table A.11
Tank data.

Tank Capacity min; max (103 m3) Initial volume (103 m3) Oil class Oil type Output pipeline Pipeline throughput (103 m3/h)
t-3208 4.558; 30.135 24.161 l-6 o-1b OSBAT 1.606
t-3210 4.508; 31.035 21.943 l-6 o-1b OSBAT 1.606
t-3214 9.284; 69.668 31.905 l-6 o-1b OSBAT 1.606
t-3215 6.256; 70.346 45.438 l-2 o-{1b,27,29b, A,B,E} OSBAT 1.503
t-3217 8.694; 70.163 9.390 l-2 o-{1b,27,29b, A,B,E} OSBAT 1.503
t-3218 8.460; 69.591 13.020 l-7 o-{1b,27,29b, A,B,E} OSBAT 1.537
t-3219 7.651; 69.441 8.718 l-7 o-{1b,27,29b, A,B,E} OSBAT 1.537
t-3233 10.819; 72.589 39.015 l-7 o-{1b,29b,A, B,E} OSBAT 1.537
t-3234 9.766; 77.329 10.630 l-1 o-{1a,05,38, C,D} OSVAT 4.470
t-3235 9.282; 77.224 9.858 l-1 o-{1a,05,38, C,D} OSVAT 4.470
t-3237 10.457; 73.077 18.232 l-3 o-{1a,05,08, 26,27,29a,38, C,D} OSVAT 4.511
t-3238 3.235; 33.495 31.001 l-3 o-{1a,05,08, 26,27,29a,38, C,D} OSVAT 4.511
t-3239 9.654; 77.355 9.997 l-4 o-{1a,05,08, 26,38,C} OSVAT 4.390
t-3240 11.433; 73.352 60.629 l-4 o-{1a,05,08, 26,38,C} OSVAT 4.390
t-3241 11.370; 73.745 69.524 l-5 o-{1a,05,26, 38,C,D} OSVAT 4.429
t-3242 9.137; 72.718 11.385 l-5 o-{1a,05,26, 38,C,D} OSVAT 4.429
t-3243 11.022; 77.001 39.015 l-6 o-{1a,05,38, C} OSVAT 4.447
t-3244 10.819; 72.589 40.513 l-6 o-{1a,05,38, C} OSVAT 4.447

2002; Glover et al., 1999). OptQuest remains a black-box due to


Table A.12
Pier data. commercial reasons and the explicit heuristics are unknown
(Kleijnen & Wan, 2007). Basically, it defines decision variables
Pier Allowed tankers Utilization cost (unit/h)
and a cost function from simulation variables. Decision variables
p-1 All tankers 5.0314 are identified in a proper table and a cost function is defined by
p-2 All tankers, except k-6 2.5157
an algebraic expression of simulation variables using common
p-3 All tankers, except k-6 2.5157
p-4 k-2, k-3, k-8, k-9, k-10, k-11, k-12, k-13 1.2579 algebraic operators.
Similarly to Section 5.1, different population sizes, crossover
and mutation rates were tested for GA. The best results were
achieved with population size N = 200, mutation rate = 0.08 and
Table A.13 crossover type and rate = simple crossover and 0.85, respectively.
Oil cost (unit/103m3).
Comparison among PSO, GA and OptQuest is accomplished for
Oil class Terminal Refinery average final profits. Each algorithm generates R = 10 fitness values
l-1 129.8113 135.2201 (profits) which are compared each other using the Kruskal–Wallis
l-2 126.7925 132.0755 statistical test with a 95% confidence level.
l-3 126.7925 132.0755 We consider the same number of 2000 fitness evaluations for all
l-4 128.6037 133.9622
algorithms. A swarm with N = 10 particles and T = 200 iterations
l-5 132.8302 138.3648
l-6 131.6227 137.1069
requires a total of 2000 fitness evaluations. By considering that
l-7 126.7925 132.0755 OptQuest is a non-population based meta-heuristic (i.e., it consid-
ers only a single possible solution for each iteration), 2000 itera-
tions will be thus necessary. The results for each arrival process
Search and Scatter Search (Marti, Laguna, & Glover, 2006) to im- are presented in Table 8 with best ones emphasized in bold.
prove an initial solution. NN are used to approximate the objective As in the previous section for TAP, the petroleum resource allo-
function. They reduce the computational burden by avoiding sim- cation problem requires more computational time from GA than
ulation of poor or even unfeasible solutions. Unfortunately, little from PSO. However, both run slower than OptQuest. This is
information about OptQuest is available in the literature (Fu, expected if we consider that OptQuest is designed to run faster
330 M.S.R. Martins et al. / Computers & Industrial Engineering 65 (2013) 322–330

Table A.14
Interface cost (unit).

Oil class l-1 l-2 l-3 l-4 l-5 l-6 l-7


l-1 – – 1.57235 0.62895 1.57235 0.94340 –
l-2 – – – – – 2.51570 –
l-3 1.57235 – – 0.94335 3.14465 2.51570 –
l-4 0.62895 – 0.94335 – 2.20130 1.57235 –
l-5 1.57235 – 3.14465 2.20130 – 0.62895 –
l-6 0.94340 2.51570 2.51570 1.57235 0.62895 – 2.51570
l-7 – – – – – 2.51570 –

thanks to a better software integration with ARENA using tight and Banks, A., Vincent, J., & Anyakoha, C. (2008). A review of particle swarm optimization.
Part II: Hybridisation, combinatorial, multicriteria and constrained optimization,
more efficient inner-communication protocols. In all the cases we
and indicative applications. Natural Computing, 7, 109–124.
have statistically differences between at least one pair of algorithms Boschetto, S., Magatão, L., Brondani, W., Neves, F., Jr., Arruda, L., et al. (2010). An
(p-values are lower than 0.05). After the post hoc analysis of the operational scheduling model to product distribution through a pipeline
Kruskal–Wallis statistical test we conclude that PSO outperformed network. Industrial & Engineering Chemistry Research, 49, 5661–5682.
Cafaro, V., Cafaro, D. C., Mendez, C. A., & Cerda, J. (2011). Multiproduct operations:
GA and OptQuest for M2/3 h and M2/30 h arrival processes. For Discrete-event simulation guides pipeline logistics. Oil & Gas Journal, 109(15),
M3, PSO and GA are equivalent and both outperformed OptQuest. 98–104.
In terms of final profits (provided by the best solutions among Demsar, J. (2006). Statistical comparisons of classifiers over multiple data sets.
Journal of Machine Learning Research, 7, 1–30.
all runs), the number of simulation replications should be in- Engelbrecht, A. P. (2007). Computational intelligence: An introduction (2nd ed.). John
creased to reduce the confidence interval associated to each profit. Wiley and Sons.
The results are shown in Table 9 with best ones in bold. Fu, M. C. (2002). Optimization for simulation: Theory vs. practice. Journal on
Computing, 14, 192–214.
We can conclude with 95% confident that the final allocation Gambardella, L. M., & Rizzolli, A. E. (2000). The role of simulation and optimisation
provided by PSO is better (higher profit) than GA and OptQuest in intermodal container terminals. European Simulation Symposium, 107–116.
for all cases. Note that profits for M2/30 h are higher than for Gibbons, J. (1985). Nonparametric statistical inference. USA: CRC.
Glover, F., Kelly, J. P., & Laguna, M. (1999). New advances for wedding optimization
M2/3 h or greater inter-arrival times produce higher profits. This and simulation. In Proceedings of the 1999 winter simulation conference (pp. 255–
phenomenon could be explained by the fact that a greater spread 260). Phoenix, AZ.
in arrival times of tankers releases resources that can be better uti- Hu, X. (2011). PSO tutorial. <http://www.swarmintelligence.org/tutorials.php> Last
accessed 20.06.11.
lized by optimization.
Jiao, B., Chen, Q., & Yan, S. (2011). A cooperative co-evolution PSO for flow shop
scheduling problem with uncertainty. Journal of Computers, 6(9), 1955–1961.
6. Conclusions Kelton, W. D., Sadowski, R. P., & Sturrock, D. T. (2007). Simulation with Arena (4th
ed.). New York: McGraw-Hill.
Kennedy, J., & Eberhart, R. (1995). Particle swarm optimization. In Proceedings IEEE
This paper has proposed a PSO-based optimization approach
international conference on neural networks. Perth, Austrlia.
with a particular path relinking technique adopted for moving par- Kennedy, J., & Eberhart, R. (1997). A discrete binary version of the particle swarm
ticles. The PSO algorithm has been tested in a deterministic optimi- algorithm. In IEEE international conference on systems, man, and cybernetics (pp.
4104–4108). Orlando, USA.
zation problem and then modified to be applied in a scenario of
Kia, M., Shayan, E., & Ghotb, F. (2002). Investigation of port capacity under a new
randomness found in a petroleum terminal using simulation optimi- approach by computer simulation. Computers & Industrial Engineering, 42(2–4),
zation. The proposed approach has shown good performance to be 533–540.
an attractive option for some particular resource allocation prob- Kleijnen, J. P. C., & Wan, J. (2007). Optimization of simulated systems: Optquest and
alternatives. Simulation Modelling Practice and Theory, 15, 354–362.
lems as those addressed in the paper. PSO has presented final solu- Magatão, L., Arruda, L. V. R., & Neves, F. (2004). A mixed integer programming
tions comparable with or better than GA with less computational approach for scheduling commodities in a pipeline. Computers and Chemical
burden. Moreover, they are comparable with those of OptQuest with Engineering, 28, 171–185.
Marti, R., Laguna, M., & Glover, F. (2006). Principles of scatter search. European
a slight advantage to PSO. Our approach is also able to deal with ran- Journal of Operational Research, 169, 359–372.
domness in the application as it has shown good performance with Más, R., & Pinto, J. M. (2003). A mixed-integer optimization strategy for oil supply in
average values. It turns out that PSO is quite useful for simulation distribution complexes. Optimization and Engineering, 4(1–2), 23–64.
Mori, F. M., Lüders, R., Ramos de Arruda, L. V., Yamamoto, L., Bonacin, M. V., Polli, H.
optimization approach where an application-independent algo- L., & et al. (2007). Simulating the operational scheduling of a real-world pipeline
rithm is necessary and run time is a real concern for practical appli- network. In 17th European sumposium on computer aided process engineering (pp.
cations. However, further work should be done for comparing the 691–696).
Mukhef, H., Farhan, E., & Jassim, M. (2008). Generalized shortest path problem in
optimization algorithms in terms of convergence properties.
uncertain environment based on PSO. Journal of Computer Science, 4(4), 349–352.
Olafsson, S., & Kim, L. (2002). Simulation optimization. In Proceedings of the 2002
Acknowledgement winter simulation conference (pp. 19–84). New York.
Poli, R. (2008). Analysis of the publications on the applications of particle swarm
The authors thank the anonymous reviewers for their helpful optimisation. Journal of Artificial Evolution and Applications, 1–10.
Relvas, S., Matos, H. A., Barbosa-Povoa, A. P. F. D., Fialho, J., & Pinheiro, A. S. (2006).
contributions. Myriam Regattieri Delgado is supported by the Pipeline scheduling and inventory management of a multiproduct distribution
Brazilian Research Council - CNPq through grant 311605/2011-7. oil system. Industrial & Engineering Chemistry Research, 45(23), 7841–7855.
Rosendo, M., & Pozo, A. (2010). A hybrid particle swarm optimization algorithm for
combinatorial optimization problems. In IEEE congress on evolutionary
Appendix A. Input data for terminal GEBAST computation (CEC) (pp. 1–8).
Souza, G., Goldbarg, E. F., & Goldbarg, M. C. (2006). Particle swarm for the traveling
salesman problem. Lecture Notes in Computer Science, 3906, 99–110.
Input data for tankers, tanks, piers, oil and interface costs are VBGALIB, Visual basic genetic algorithm library. <http://home.snu.edu/brint/
presented in Tables A.10–A.14, respectively. vbgalib/> Last accessed 15.12.12.
Wall, M. Massachusetts Institute of Technology (MIT), GAlib. <http://lancet.mit.edu/
ga/> Last accessed 31.08.12.
References Wang, J., Cai, Y., Zhou, Y., Wang, R., & Li, C. (2011). Discrete particle swarm
optimization based on estimation of distribution for terminal assignment
Asperen, E. V., Dekker, R., Polman, M., & Arons, H. S. (2003). Modeling ship arrivals problems. Computers & Industrial Engineering, 60(4), 566–575.
ports. In Proceedings of the 2003 winter simulation conference (pp. 1737–1744). Zeng, Q., & Yang, Z. (2009). Integrating simulation and optimization to schedule
Banks, A., Vincent, J., & Anyakoha, C. (2007). A review of particle swarm optimization. loading operations in container terminals. Computers & Operations Research, 36,
Part I: Background and development. Natural Computing, 6, 467–484. 1935–1944.

You might also like