You are on page 1of 278

XIII Congreso Español

de Metaheurísticas,
Algoritmos Evolutivos y
Bioinspirados
(XIII MAEB)

O SCAR CORDÓN
R AFAEL M ARTÍ

Secretaría Técnica:
DANIEL M OLINA Y M ARÍA ISABEL GARCÍA
XIII Congreso Español
de Metaheurísticas,
Algoritmos Evolutivos y
Bioinspirados
(XIII MAEB)

MAEB 1: A PLICACIONES DE
LAS M ETAHEURÍSTICAS
XIII Congreso Español en Metaheurı́sticas y Algoritmos Evolutivos y Bioinspirados

Evolving Geographically-embedded Complex


Networks using the CRO-SL Algorithm
1st Sancho Salcedo-Sanz 2nd Lucas Cuadra
Dept. of Signal Processing and Communications Dept. of Signal Processing and Communications
Universidad de Alcalá Universidad de Alcalá
Alcalá de Henares, Spain Alcalá de Henares, Spain
sancho.salcedo@uah.es lucas.cuadra@uah.es

Abstract—This paper deals with the problem of evolving CN concepts with a profuse variety of examples in both natural
geographically-embedded randomly generated complex networks (metabolic networks, gene interactions, food webs, etc.) and
aiming at fulfilling the scale-free property: the fraction of nodes artificial systems (the Internet, transport networks, or power
in the network having degree k (ki = number of links in node
ni ) follows a power law probability distribution P (k) ∼ k−γ . grids). In particular, the feasibility of using CN concepts in
Intuitively, this means that most nodes have only a few connec- power grids have been recently discussed in [2] and [3] in
tions and only a few nodes (“hubs”) have a high number of links combination with evolutionary algorithms in smart grids. More
(or connections). The scale-free property is well-known in very profound technical details about CN can be found in [4], [5],
large complex networks (with a huge number of nodes and links) [6], [7] and the references there in.
but it has received much less attention for small geographically-
embedded networks, in which the study of networks’ properties Most recent studies reveal that many CNs –such as some
is much more difficult. Regarding this, we explore the feasibility power grids or the Internet– have a heterogeneous topology
of generating geographically-embedded complex networks even [1] as the one represented in Fig. 1 (a). Note that most nodes
in the case of small networks (those with only hundred of nodes)
by means of considering a simple model for network generation
have only a few connections and only a few nodes (“hubs”)
based on distances among nodes. We state the problem as an have a high number of links. This is why the network is said
optimization task, in which each node of the network has a link to have “no scale”, so it is called “scale-free” [1]. As shown
radius assigned to conform its links to other nodes in the network. in Fig. 1 (b), the fraction of nodes having degree k (ki =
The idea is to evolve these link radius for all the nodes in the number of links in node i) exhibits a power law distribution
network, aiming at finally fulfilling the scale-free property, when
possible. Our machine learning approach for network evolution
P (k) ∼ k −γ .
is based on the recently proposed meta-heuristic called Coral
Reefs Optimization algorithm with Substrate Layer (CRO-SL).
Our experimental work shows that the proposed model is able to
generate geographically (or spatially) embedded networks with
the scale-free property. Specifically, we test the performance of
the CRO-SL approach in two different, randomly generated, 3"$
geographically-embedded networks with 200 and 400 nodes,
respectively.
Index Terms—Geographically-embedded complex networks;
Scale-free networks; Meta-heuristics; CRO-SL.

I. I NTRODUCTION
012
What do systems as different as power grids and ecosystems
have in common? Both can be described in terms of graphs:
a node represents an entity (generator/load in a power grid,
or a species in an ecosystem) that is linked with others (by
P (k)

electrical cables in the power grid or trophic relationships in


an ecosystem). These and other dissimilar systems are called
complex systems because it is extremely difficult to deduce
their emerging collective behavior from only the components
!"#$%&'()'*+,-./ k
of the system [1]. Their topological and dynamical features can 0$2
be studied using the Complex Network (CN) Science [1]. The
interested reader is referred to [1], which clearly explains of Fig. 1. (a) Example of a scale-free complex network with 400 nodes. (b) Node
degree probability density function of a network similar to that represented
This work has been partially supported by the project TIN2017-85887- in (a).
C2-2-P of the Spanish Ministerial Commission of Science and Technology
(MICYT).

497
XVIII Conferencia de la Asociación Española para la Inteligencia Artificial

In many of these CNs (for instance, citation networks) the search space and objective function of the problem. Section
position of nodes in the physical space plays no role at all IV shows the main characteristics of the CRO-SL considered
[8]. However there are other CNs (such as transportation, in this paper. Section V describes the experimental part of the
infrastructure and wireless communication networks) in which paper, with computational results over two randomly generated
nodes and links are embedded in space. In this particular networks with 200 and 400 nodes. Section VI gives some final
kind of CNs, called “spatial networks” (spatially-embedded conclusions and remarks to close the paper.
or geographically-embedded networks), nodes are located in
a space associated to a metric, usually the Euclidean distance II. G ROWING GEOGRAPHICALLY- EMBEDDED COMPLEX
[8], [9], [10]. The interested reader is referred to [8] for further NETWORKS OVER RANDOM - DISTRIBUTED NODES
details about spatial networks, which can be classified into two
categories [8]. The first one, called planar networks, are those Let us consider a model for growing geographically-
that can be drawn in the plane in such a way that their links embedded complex networks using randomly-distributed
do not intersect. The second one involves spatial non-planar nodes. The idea is to grow the network as the random
networks (for instance airline networks, cargo ship networks, nodes are being generated. Note that since we consider a
or power grids) where links (which can intersect in the plane) random location for the new generated nodes, the network is
have a cost related to their length. Although the scale-free completely constructed from scratch. We can consider many
property is well-known in very large, non-spatial complex different random ways of generating the network nodes, but in
networks (with a huge number of nodes), however it is not any case, a constraint of maximum distance from a neighbor to
the case in small geographically-embedded networks. This is others node must be fulfilled. In order to do this, we consider
because, in spatial networks, when geometric constraints are an extremely simple model for nodes generation, in which the
very strong or when the cost associated to the addition of new appearing node must be located at a minimum distance
new links is large (water and gas distribution networks, power from another neighbor node, Ra (attachment radius), to be
grids, or communication networks), the appearance of hubs attached to the network. Otherwise it will be discarded. Note
and the scale-free feature become more difficult [8]. that this radius may be characteristic of the node i currently
In this paper we show that any randomly generated network being generated so that, in this case, we will denote it as Rai .
can be constructed to very approximately follow a scale-free However, in the general case, all the nodes in the network
distribution. This result has only been previously proven for will be generated with the same Ra , this simulation parameter
geographically-embedded network in a regular lattice [10]. being thus equal for all nodes. As previously mentioned, the
To show this result, we first propose a very simple model network will be grown while random nodes are being gener-
for randomly constructing geographically-embedded networks, ated. Aiming at doing this, we propose a simple mechanism for
which consists in assigning a link radius to each new node of links generation for a new node i: let Rli be the link radius
the network. The proposed model for network construction es- associated with the recently generated node i, and let L be
tablishes that each link radius may be different for each node, the link matrix, in which Lij stands for a binary variable
and it is fully related to the network construction: when a node describing whether or not there is a link between node i and
is randomly generated, it is linked with all other existing nodes an alternative node j. Then, each time a node i is generated,
in the network which are at a distance smaller than its link it establishes links to other nodes already attached, in the
radius. In order to show that the network follows a scale-free following way:
distribution, we evolve it, i.e. we use an evolutionary-based
if d(i, j) < Rli
{
algorithm in order to assign link radius to all the nodes in the 1,
Lij = (1)
network. The objective is that, eventually, the network follows 0, otherwise
(approximately) a scale-free distribution. We state this problem
as an optimization task, with discrete-based encoding, in which where d(i, j) stands for the Euclidean distance (not the
a meta-heuristic search must be applied (since brute-force geodesic one used in non-spatial networks [8]) between node
schemes are discarded due to excessive computational cost). i and any other existing node (j). It is important to note that
Specifically, we evaluate the performance of the Coral Reefs the number of links established when the node i is finally
Optimization algorithm with Substrate Layer (CRO-SL) in this generated attached, not discarded) will only depend on Rli .
problem of complex networks evolution. We will show that the Moreover, if we want to ensure that all the nodes are connected
CRO-SL is able to lead to randomly generated geographically- with at least one other node in the network, then Rli ≥ Ra .
embedded complex networks fulfilling the scale-free property, To illustrate this, let us consider the examples shown in
and we show it in two cases with randomly generated network Fig. 2. The first one, in Fig. 2 (a), shows a random network
of 200 and 400 nodes. generated with parameters Ra = 10 and Rli = 10 (in this
The remainder of the paper has been structured in the case the same value of Rli for all the nodes generated in
following way: next section presents the model we consider the network). Note that, since Rli = Ra , each node will be
to construct geographically-embedded complex networks with attached to a very reduced number of other existing nodes in
randomly-distributed nodes. Section III describes the evolution the network. If we keep Ra = 10 in the node generation,
of the network as an optimization task, defining the encoding, but Rli takes values in [10, 15, 20, 30], depending on the node

498
XIII Congreso Español en Metaheurı́sticas y Algoritmos Evolutivos y Bioinspirados

generated, then we obtain the network represented in Fig. 2 here is whether or not the proposed model for complex
(b). network construction over geographically embedded random
nodes can generate scale-free networks. Note that in this case
the random situation of nodes makes impossible to obtain an
150 250
exact solution such as the one shown for square lattices in
100 200
[10]. The approach, therefore, should be stochastic due to the
50 150
nature of the considered networks, and approximate solutions
0 100
could arise.
y

y
-50 50

-100 0
IV. O PTIMIZATION METHOD : THE CRO-SL ALGORITHM
-150 -50

-200
-200 -150 -100 -50
x
0 50 100 150
-100
-100 -50 0 50 100
x
150 200 250 300 The Coral Reef Optimization algorithm (CRO) [12] (further
(a) (b)
described in [13]), is an evolutionary-type algorithm based on
the behavior of the processes occurring in a coral reef. For an
Fig. 2. Example of geographically embedded complex networks generated
illustrative description of the CRO algorithm, the interested
with the proposed simple model considering Ra and Rli ; (a) Example of reader is referred to [12], [13]. Additionally, in [14], a new
complex network with Ra = 10 and Rli = 10; (b) Example of complex version of the CRO algorithm with Substrate Layer, CRO-SL,
network with Ra = 10 and Rli ∈ [10, 15, 20, 30]. has been presented. In the CRO-SL approach, several substrate
layers (specific parts of the population) have been introduced.
In this algorithm, each substrate layer may represent different
processes (different models, operators, parameters, constraints,
III. Q UASI -S CALE F REE GEOGRAPHICALLY- EMBEDDED repairing functions, etc.). Specifically, in [15] a version of
NETWORKS WITH RANDOM NODES the CRO-SL algorithm has been recently proposed, in which
Let us consider a random-based geographically-embedded each substrate layer represents a different search procedure,
network with N nodes (“network order” = N ). This means leading to a co-evolution competitive algorithm. This version
that, after the node generation process, there will be N nodes of the CRO-SL has been successfully tested in different
in the network. Recall that the network is being constructed applications and problems such as micro-grid design [16],
dynamically, so each time a node i is generated and fulfils vibration cancellation in buildings, both with passive models
the Ra condition, then matrix L is modified to include the [17], and active models [18], or in the evaluation of novel
new node links. Let us consider a given Ra for the complete non-linear search procedures [19]. This is also the CRO-SL
network construction and specific Rli radius for each node, and algorithm used in this paper for complex network evolution.
Ra ≥ Rli . Let r = [Rl1 , . . . , RlN ] the link radius associated Regarding the algorithm’s encoding for the optimization
with the N nodes finally forming the network. The idea is to problem at hand, we consider integer vectors as solutions,
obtain a vector r∗ which makes the network have a scale-free x ∈ N. Note that using this encoding the length of each
behavior, i.e., such that it minimizes the following objective individual is equal to N . This encoding provides a compact
(fitness) function: version of the algorithm, and allows using some different
searching procedures such as Harmony Search or Differential
N
∑ Evolution. The main problem with a direct encoding of N
f (r) = (pk (r) − k −γ ) (2) integer values in the CRO-SL algorithm is that, as N grows,
k=2 the searching capabilities of the algorithm can be affected,
where pk stands for the degree distribution of the random since the search space is huge. It is possible to manage shorter
network obtained with a vector r. Note that we aim to find out encodings by using a compressed version of the encoding,
whether or not there is a r∗ leading to a power law distribution in such a way that each element of the encoding represents
with a given γ. β actual values, such as we proposed in [20]. Fig. 3 shows
This problem is therefore stated as an integer optimization an example of this compressed encoding, which reduces the
problem, in which the final network degree distribution will current encoding length l to l′ = βl . Of course, the resolution
completely depend on r. The problem is discrete, highly non- of the search space is smaller than in the original encoding
linear, and the search space size is huge when the network when the compressed encoding is applied, but on the other
order N grows, which discards exact solutions via brute hand, it is expected that the CRO-SL algorithm searches for
force algorithms. In these kind of problems meta-heuristics better solutions in this smaller search space.
approaches such as Evolutionary Computation-based algo- The considered substrates for solving the stated problem are
rithms are able to obtain very good solutions with a moderate detailed below. Note that there are general purpose substrates,
computational complexity. We therefore propose to apply a such as Differential Evolution or Harmony Search-based, and
kind of Evolutionary Algorithm, the aforementioned CRO- other specific substrates with crossovers and mutations adapted
SL approach, to solve this optimization problem associated to the chosen encoding. Five different substrates will be
with scale-free random-based networks. The question arising described and evaluated later in the experimental section.

499
XVIII Conferencia de la Asociación Española para la Inteligencia Artificial

consists of mutating an element of a coral with another


b b valid value (different from the previous one). Note that
the SM operator links a given coral (possible solution)
20 20 20 20 20 15 15 15 15 15
to a neighborhood of solutions which can be reached by
means of a single change is an element of the coral.

20 15 V. E XPERIMENTS AND R ESULTS


In this section we show different computational results
1 1
obtained with the CRO-SL in the evolution of two different
random networks with 200 and 400 nodes, respectively. The
Fig. 3. Compressed encoding example (β = 5), useful in the evolution of
complex networks. resulting randomly generated nodes have been represented in
Fig. 4 without the corresponding links which form the net-
work, for the sake of clarity. In both cases, a common Ra = 10
value has been considered, whereas the link radius to be
• Differential Evolution-based operator (DE): This op- assigned by the CRO-SL has been forced to fulfill the property
erator is based on the evolutionary algorithm with that 10 ≤ Rli ≤ 100. Table I shows the corresponding values for
name [22], a method with powerful global search ca- the CRO-SL parameters considered in the experiments carried
pabilities. DE introduces a differential mechanism for out.
exploring the search space. Hence, new larvae are gener-
ated by perturbing the population members using vector 150 200

differences of individuals. Perturbations are introduced by 150


100
applying the rule x′i = x1i + F (x2i − x3i ) for each encoded 100

parameter on a random basis, where x′ corresponds to 50 50

the output larva, xt are the considered parents (chosen


0
y 0 y
-50

uniformly among the population), and F determines the -50 -100

evolution factor weighting the perturbation amplitude. -100


-150

• Harmony Search-based operator (HS): Harmony -200

-150 -250
Search [23] is a population based MH that mimics the -200 -150 -100 -50
x
0 50 100 150 -200 -150 -100 -50 0
x
50 100 150 200 250

improvisation of a music orchestra while its composing a (a) (b)


melody. This method integrates concepts such as harmony
aesthetics or note pitch as an analogy for the optimization Fig. 4. Randomly-generated nodes for the N = 200 and N = 400 networks
process, resulting in a good exploratory algorithm. HS (represented without links, and with Ra = 10); (a) N = 200; (b) N = 400.
controls how new larvae are generated in one of the
following ways: i) with a probability HMCR ∈ [0, 1]
(Harmony Memory Considering Rate), the value of a
component of the new larva is drawn uniformly from TABLE I
the same values of the component in the other corals. ii) PARAMETERS OF THE CRO-SL USED IN THE EVOLUTION OF THE
with a probability PAR ∈ [0, 1] (Pitch Adjusting Rate), NETWORKS CONSIDERED . S EE [12], [13] FOR FURTHER DETAILS ABOUT
THE PARAMETERS .
subtle adjustments are applied to the values of the current
larva, replaced with any of its neighboring values (upper CRO-SL Parameters
or lower, with equal probability). Initialization Reef size = 50 × 40, ρ0 = 0.9
• Two points crossover (2Px): 2PX [21] is considered one External sexual reproduction Fb = 0.80
Substrates T = 5 substrates: HS, DE, 2Px, MPx, SM
of the standard recombination operators in evolutionary Internal sexual reproduction 1 − Fb = 0.20
algorithms. In the standard version of the operator, two Larvae setting κ=3
parents from the reef population are provided as input. A Asexual reproduction Fa = 0.05
Depredation Fd = 0.15, Pd = 0.05
recombination operation from two larvae is carried out by Stop criterion kmax = 500 iterations
randomly choosing two crossover points, interchanging
then each part of the corals between those points.
• Multi-points crossover (MPx): Similar to the 2PX, but in
this case the recombination between the parents is carried First, we have tackled the evolution of the N = 200
out considering a high number of crossover points (M ), network, from scratch by using the CRO-SL algorithm. A
and a binary template which indicates whether each part compressed encoding with β = 5 has been considered so
of one parent is interchanged with the corresponding of that the corals length is in this case l′ = 200
5 = 40. Fig. 5
the other parent. shows the results obtained by the CRO-SL in the evolution
• Standard integer Mutation (SM): This operator consists of this network. Fig. 5 (a) shows the network obtained after
of a standard mutation in integer-based encodings. It the optimization process, which has obtained an excellent

500
XIII Congreso Español en Metaheurı́sticas y Algoritmos Evolutivos y Bioinspirados

agreement of the network distribution node degree with a take into account that the spatial network construction depends
power law distribution k −1.55 (Fig. 5 (b)). Note that, in this on the position of the randomly generated nodes (we have
case, we have explored 12 values of the node degree k in considered geographically-embedded networks), controlled by
the network, ranging from 2 to 12, while the rest bring in Ra and also in the values of Rli , which are evolved by the
upper values of k. The best solution r∗ found by the CRO-SL CRO-SL algorithm.
algorithm has been represented in Fig. 5 (c), note the runs
of β = 5 equal values in the solution. Fig. 5 (d) shows the
0

fitness evolution of the best coral in the reef. As can be seen, 200
10

150
the CRO-SL is able to converge almost up to optimality in 100

just 500 generations, showing a fast and robust behaviour in 50 10


-1

this problem. 0

P(k)
y
-50
-2
-100 10

0 -150
10
150
-200
-3
100 -250 10
0 1 2
-200 -150 -100 -50 0 50 100 150 200 250 10 10 10
x k

50
(a) (b)
P(k)

-1
0 10 1
y

50

45 0.9
-50
40 0.8

35 0.7
-100

30 0.6

fitness
-2
-150 10 0.5

Rl
-200 -150 -100 -50 0 50 100 150 10
0
10
1
10
2 25
x k
20 0.4

(a) (b) 15 0.3

10 0.2
40 1

5 0.1
0.9
35
0 0
0.8 0 100 200 300 400 500
0 50 100 150 200 250 300 350 400
30 Node generations
0.7

25 0.6 (c) (d)


fitness

0.5
Rl

20

0.4
15
0.3 Fig. 6. Example of geographically-embedded complex network with N =
10
0.2 400 nodes, evolved with the CRO-SL algorithm; (a) Resulting geographically-
5 0.1 embedded network ; (b) Node degree distribution for the network represented
0 0
0 100 200 300 400 500
in (a): blue circles stand for the power law distribution k−1.59 , and red points
0 50 100 150 200
Node generations for the actual degree distribution of the obtained network; (c) Best solution
(c) (d) obtained with the CRO-SL; (d) CRO-SL fitness evolution.

Fig. 5. Example of geographically-embedded complex network with N =


200 nodes, evolved with the CRO-SL algorithm; (a) Resulting spatial network
obtained; (b) Node degree distribution for the network represented in (a): blue
As can be seen in the results obtained, it is possible to obtain
circles stand for the power law distribution k−1.55 , and red points for the quasi-scale-free geographically-embedded random networks,
actual degree distribution of the obtained network; (c) Best solution obtained considering a very simple model of distances between nodes.
with the CRO-SL; (d) CRO-SL fitness evolution.
It is necessary to solve an optimization problem, which is
hard, since it must optimize the link radius of all the randomly
generated nodes which form the network. We have shown how
Fig. 6 shows the results obtained by the CRO-SL in the the CRO-SL algorithm is able to successfully solve this task,
evolution of the second network considered, with a network finding near optimal solutions to the optimization problem.
order of N = 400 nodes. In this case, we have considered
a compressed encoding with β = 10, which leads to a VI. S UMMARY AND CONCLUSIONS
l′ = 400
10 = 40, similar to the N = 200 case. We have found In this paper we have shown that random geographically-
that this compressed encoding provides the best results. Fig. embedded networks can be constructed, in such a way that
6 (a) shows the resulting network generated by the CRO-SL they fulfil the scale-free property, i.e. the fraction of nodes in
algorithm, which is constructed to very approximately follow the network having degree k (ki = number of links in node ni )
a power law distribution k −1.59 . In this case we have explored follows a power law probability distribution P (k) ∼ k −γ . Up
15 values of the degree k, from 2 to 15 and a rest in upper val- until now, the scale-free property in geographically-embedded
ues of k. The best solution r∗ found by the CRO-SL algorithm network has only been studied for regular networks in a
has been displayed in Fig. 6 (c). Note the runs of β = 10 equal mesh. We have considered completely randomly generated
values in the solution. Fig. 7 shows the network evolution nodes for the networks, and we have established the on-
process in 6 steps for the best solution found by the CRO- line construction of the network, following a very simple
SL. In this figure it is possible to see the process of network model which only depends on the distances between new
construction as the nodes are being attached. It is important to generated nodes and existing nodes in the network (Rli ). We

501
XVIII Conferencia de la Asociación Española para la Inteligencia Artificial

R EFERENCES
200 200

150 150 [1] A.L. Barabási and M. and Pósfai, Network Science. Cambridge Univer-
100 100 sity Press, Cambridge, UK, 2016.
50 50
[2] L. Cuadra, M. del Pino, J. C. Nieto-Borge, and S. Salcedo-Sanz, “A
0 0
critical review of robustness in power grids using complex networks
concepts,” Energies, vol. 8, no. 9, pp. 9211-9265, 2015.
y

y
-50 -50

-100 -100
[3] L. Cuadra, M. del Pino, J. C. Nieto-Borge, and S. Salcedo-Sanz,
-150 -150
“Optimizing the Structure of Distribution Smart Grids with Renew-
able Generation against Abnormal Conditions: A Complex Networks
-200 -200
Approach with Evolutionary Algorithms,” Energies, vol. 10, no. 8, pp.
-250 -250
-200 -150 -100 -50 0
x
50 100 150 200 250 -200 -150 -100 -50 0
x
50 100 150 200 250 1097, 2017.
[4] S. H. Strogatz, “Exploring complex networks,” Nature, vol. 410, no.
(a) (b) 6825, pp. 268, 2001.
200 200
[5] R. Albert and A. L. Barabási, “Statistical mechanics of complex net-
150 150
works,” Reviews of modern physics, vol. 74, no. 1, pp. 47, 2002.
100 100
[6] M. E. Newman, “The structure and function of complex networks,”
50 50 SIAM review, vol. 45, no. 2, pp. 167–256, 2003.
0 0 [7] S. V. Buldyrev, R. Parshani, G. Paul, H. E. Stanley, and S. Havlin,
y

-50 -50 “Catastrophic cascade of failures in interdependent networks,” Nature,


-100 -100 vol. 45, no. 7291, pp. 1025, 2010.
-150 -150 [8] M. Barthélemy, “Spatial networks”, Physics Reports, vol. 499, no. 1-3,
-200 -200 pp. 1-101, 2011.
-250 -250 [9] M. Barthélemy, Morphogenesis of Spatial Network, Springer, 2017.
-200 -150 -100 -50 0 50 100 150 200 250 -200 -150 -100 -50 0 50 100 150 200 250
x x [10] K. Kosmidis, S. Havlin and A. Bunde, “Structural properties of spatially
(c) (d) embedded networks,” Europhysics Letters, vol. 82, no. 4, pp. 1-5, 2008.
200 200
[11] A. L. Barabási and R. Albert, “Emergence of scaling in random
150 150
networks” Science, vol. 286, pp. 509-512, 1999.
100 100
[12] S. Salcedo-Sanz, J. del Ser, I. Landa-Torres, S. Gil-López and A.
50 50
Portilla-Figueras, “The Coral Reefs Optimization algorithm: a novel
metaheuristic for efficiently solving optimization problems,” The Sci-
0 0
entific World Journal, 2014.
y

-50 -50
[13] S. Salcedo-Sanz, “A review on the coral reefs optimization algorithm:
-100 -100
new development lines and current applications,” Progress in Artificial
-150 -150
Intelligence, vol. 6, pp. 1-15, 2017.
-200 -200
[14] S. Salcedo-Sanz, J. Muñoz-Bulnes and M. Vermeij, “New coral reefs-
-250
-200 -150 -100 -50 0 50 100 150 200 250
-250
-200 -150 -100 -50 0 50 100 150 200 250 based approaches for the model type selection problem: a novel method
x x
to predict a nation’s future energy demand,” International Journal of
(e) (f) Bio-Inspired Computation, vol. 10, no. 3, pp. 145-158, 2017.
[15] S. Salcedo-Sanz, C. Camacho-Gómez, D. Molina and F. Herrera, “A
Coral Reefs Optimization algorithm with substrate layers and local
Fig. 7. Network evolution process in 6 steps for the N = 400 case (best
search for large scale global optimization,” In Proc. of the IEEE World
solution obtained with the CRO-SL algorithm).
Congress on Computational Intelligence, Vancouver, Canada, July, 2016.
[16] S. Salcedo-Sanz, C. Camacho-Gómez, R. Mallol-Poyato, S. Jiménez-
Fernández and J. del Ser, “A novel Coral Reefs Optimization algorithm
with substrate layers for optimal battery scheduling optimization in
propose then the evolution of the network with the objective micro-grids,” Soft Computing, vol. 20, pp. 4287-4300, 2016.
[17] S. Salcedo-Sanz, C. Camacho-Gómez, A. Magdaleno, E. Pereira and A.
of fulfilling the scale-free property: we have described this Lorenzana, “Structures vibration control via tuned mass dampers using
problem as an optimization task, consisting on assigning a a co-evolution coral reefs optimization algorithm,” Journal of Sound and
given link radius Rli to each node of the network, as soon Vibration, vol. 393, pp. 62-75, 2017.
[18] C. Camacho-Gómez, X. Wang, I. Dı́az, E. Pereira and S. Salcedo-Sanz,
as it is randomly generated. The optimal assignment of these “Active vibration control design using the Coral Reefs Optimization with
link radius leads to an evolution of the network to be quasi- Substrate Layer algorithm,” Computers & Structures, in press, 2017.
scale-free when it is completely constructed. We have applied [19] S. Salcedo-Sanz, “Modern meta-heuristics based on nonlinear physics
processes: A review of models and design procedures,” Physics Reports,
the modern meta-heuristic Coral Reefs Optimization with vol. 655, 1-70, 2016.
Substrate Layers (CRO-SL), which is able to combine different [20] S. Salcedo-Sanz, A. Gallardo-Antolı́n, J. M. Leiva-Murillo and C.
searching procedures within a single-population algorithm. A Bousoño-Calzón, “Off-line speaker segmentation using genetic algo-
rithms and mutual information,” IEEE Transactions on Evolutionary
discussion on the optimal problem’s encoding with different Computation, vol. 10, no. 2, pp. 175-186, 2006.
lengths using a compression procedure is also carried out. [21] A. E. Eiben and J. E. Smith. Introduction to evolutionary computing.
We have successfully tested the CRO-SL in two randomly Springer-Verlag, Natural Computing Series 1st edition, 2003.
[22] R. Storn and K. Price, “Differential Evolution - A simple and efficient
generated networks of 200 and 400 nodes, where we have heuristic for global optimization over continuous spaces, Journal of
shown that the CRO-SL is able to obtain quasi-scale free Global Optimization vol. 11, pp. 341-359, 1997.
geographically-embedded networks when it is applied. [23] Z. W. Geem, J. H. Kim and G. V. Loganathan, “A new heuristic
optimization algorithm: Harmony Search,” Simulation, vol. 76, no. 2,
pp. 60-68, 2001.

502
XIII Congreso Español en Metaheurı́sticas y Algoritmos Evolutivos y Bioinspirados

Metaheurı́sticas para calibración de modelos


basados en agentes en dinámicas de adopción
premium
Ignacio Moya∗ , Manuel Chica∗ ,William Rand† , Oscar Cordón∗
∗ Instituto Andaluz Interuniversitario DaSCI (Data Science and Computational Intelligence), Universidad de Granada, España
† Poole College of Management, North Carolina State University, NC, United States

Emails: imoya@ugr.es, manuelchica@ugr.es, wmrand@ncsu.edu, ocordon@decsai.ugr.es

Resumen—Las aplicaciones freemium están creando nuevos la habilidad de adoptar mascotas virtuales, acceso a todos
escenarios de marketing, incentivando la adopción de servi- los avatares, y contenido reservado para usuarios premium
cios mediante la interacción entre usuarios. Para entender las como grupos y aventuras. La metodologı́a ABM [9], [10]
dinámicas de estas aplicaciones son útiles los modelos basados
en agentes, pero deben calibrarse con datos reales para poder utiliza una población de entidades autónomas llamadas agentes
ajustar su comportamiento a la realidad. Las metaheurı́sticas son que se comportan de acuerdo a reglas simples e interactúan
métodos de optimización frecuentemente usados para calibración unos con otros. Agregar estas reglas con la interacción entre
de modelos, dado que pueden ajustar los parámetros del modelo. los agentes nos permite representar dinámicas complejas y
En este artı́culo comparamos distintas metaheurı́sticas para emergentes, ası́ como definir escenarios what-if y predecir
calibrar un modelo basado en agentes que replica las dinámicas
de adopción de contenido premium usando el modelo de Bass. escenarios hipotéticos [11]. Este enfoque encaja con los patro-
Aplicamos estas metaheurı́sticas a cuatro datasets y llevamos nes de crecimiento del mercado que resultan de la interacción
a cabo un análisis de sensibilidad sobre los parámetros de las de muchos usuarios, que son más complejos que cualquier
soluciones encontradas por los algoritmos. Nuestros experimentos adopción individual [12]. Gracias a sus aplicaciones exitosas,
muestran que CMA-ES encuentra mejores soluciones que los se ha incrementado el número de trabajos que emplean ABMs,
demás algoritmos en los distintos datasets de adopción premium.
Nuestro análisis de sensibilidad muestra un amplio rango de particularmente para analizar la adopción de nuevos productos,
valores para los coeficientes de imitación e innovación del modelo polı́ticas de adopción, y estrategias de targeting [13], [14].
de Bass. Concretamente el ABM para Creature Party predice el
Index Terms—calibración de modelos, metaheurı́sticas, mode- número de usuarios básicos que adquieren contenido premium
lado basado en agentes, modelo de negocio freemium simulando periodos de tiempo especı́ficos y monitorizando el
comportamiento de los agentes. Este ABM utiliza información
I. I NTRODUCCI ÓN real de la red de usuarios para generar una red artificial [15]
El modelo de negocio freemium combina la oferta de un con una estructura similar en la que replicar el proceso social
producto o servicio sin coste con contenido premium que de adopción mediante el modelo de Bass [16]. También simula
el usuario puede adquirir de manera opcional [1]. Este mo- el comportamiento de usuarios siguiendo diferentes patrones
delo se está extendiendo en aplicaciones online [2], donde estacionales, lo que es muy relevante para las aplicaciones que
están creando nuevos escenarios de marketing dado que este muestran diferente actividad entre semana que durante fines de
contexto propicia la adopción de productos a través de la semana.
interacción entre usuarios [3]. Con estos escenarios también En general, para usar un ABM es necesario validar su
surgen distintos problemas al planear campañas de marketing: comportamiento calibrando sus parámetros. Llevamos acabo
qué individuos seleccionar para conseguir una campaña de este procedimiento utilizando data-driven automated calibra-
marketing viral, cómo lidiar con influencers, o cómo incentivar tion, que consiste en modificar los parámetros del modelo de
a los usuarios a atraer a otros mandando invitaciones a través manera automática y ası́ ajustar su salida a los datos reales.
de sus redes [4]–[7]. Entender estos y otros efectos sociales Este proceso es muy importante durante la validación del
detrás de las compras de contenido premium puede ser más modelo [12], [17], [18]. Implementamos nuestro proceso de
fácil usando un modelo basado en agentes (ABM), puesto calibración empleando metaheurı́sticas [19] como algoritmo
que permiten probar recompensas, incentivos, y polı́ticas de de búsqueda de la mejor configuración de parámetros del
targeting que incrementen el número de usuarios premium. modelo. En este artı́culo presentamos una comparación de
Un ejemplo es el ABM desarrollado para Creature Party [8]. las siguientes metaheurı́sticas: hill climbing [19], algoritmos
Esta aplicación es un juego social multiplataforma para niños genéticos [20], differential evolution [21], PSO [22], y CMA-
donde el usuario interactúa online con otros usuarios, que ES [23]. Elegimos estas metaheurı́sticas de modo que el
pueden ser premium o básicos. Un usuario básico tiene acceso grupo de métodos sea heterogéneo en cuanto a su comple-
total al juego pero un usuario premium recibe beneficios jidad, permitiendo apreciar la ganancia de rendimiento que
adicionales como una cantidad semanal de monedas del juego, consiguen métodos más avanzados. El rendimiento de las

503
XVIII Conferencia de la Asociación Española para la Inteligencia Artificial

metaheurı́sticas presentadas se basará en lo bien que el modelo modelo un usuario pasa de básico a premium cuando compra
calibrado replique los datos reales de Creature Party, que se en la tienda in-game. No consideraremos la transición inversa
presentan como la evolución de usuarios premium a lo largo (esto es, dejar de ser premium para ser básico, churn), dado
del tiempo. Estos datos se presentan en distintos periodos de que no hay datos disponibles y no podrı́amos calibrar este
tiempo componiendo los distintos datasets que utilizaremos comportamiento.
para validar las metaheurı́sticas para el problema. Una vez Cada agente tiene un conjunto de enlaces que representan
calibrado el modelo para Creature Party desarrollamos un las relaciones sociales entre usuarios de la aplicación. Estas
análisis de sensibilidad sobre las soluciones generadas en- relaciones son enlaces unidireccionales que habilitan el in-
focándonos en los coeficientes de adopción del modelo de tercambio de información y canalizan influencias entre ellos.
Bass y los parámetros de estacionalidad del modelo, utilizando Los enlaces de la red social se generan usando un algoritmo
técnicas de visualización de datos (scatter plots) para los basado en un grado de distribución dado [15], [25], con un
valores obtenidos. grado medio de 48,19 usuarios y una densidad de 0,0024.
En la Sección II describiremos el ABM de adopción de En cada paso del modelo, cada agente primero decide
contenido premium de Creature Party. La Sección III pre- si jugar o no siguiendo una probabilidad que depende del
senta las distintas metaheurı́sticas empleadas en el proceso dı́a de la semana. Modelamos este comportamiento usando
de calibración. Mostramos la experimentación y el análisis de dos parámetros: (a) la probabilidad de jugar entre semana
sensibilidad en la Sección IV. Por último, remarcamos nuestras (d ∈ [0, 1]) y (b) la probabilidad de jugar en fin de semana
conclusiones en la Sección V. (f ∈ [0, 1]). Si un agente juega a la aplicación, podrá decidir
II. D ESCRIPCI ÓN DEL MODELO posteriormente si adoptar contenido premium en base a la
influencia social de sus contactos (imitación) o por su propia
La Sección II-A presenta la estructura general del modelo. iniciativa (innovación). Este proceso de adopción sigue el
En la Sección II-B se describen los mecanismos y el comporta- modelo de Bass [12], [16], descrito en la Sección II-C. La
miento de los agentes, incluyendo sus interacciones sociales en probabilidad de jugar de cada agente sigue la Ecuación 1.
la aplicación. Finalmente presentamos el proceso de adopción El agente A decide jugar el dı́a t si la función jugartA (r)
seguido por el modelo en la Sección II-C. devuelve 1, donde r ∈ [0, 1) es un número aleatorio generado
A. Estructura general usando una distribución uniforme.
El modelo simula la evolución del número de usuarios 
premium durante un periodo de tiempo determinado usando un 1,
 si r < d ∧ t ∈ entre−semana,
time step diario. De este modo la salida del modelo consiste en A
jugart (r) = 1, si r < f ∧ t ∈ f in−semana, (1)
los nuevos usuarios premium para cada paso de la simulación, 
0, e.o.c.

que es el indicador principal de este tipo de mercados [24]. Ob-
servando la evolución de adopciones premium diarias podemos C. Modelo de adopción
medir como de bien se ajusta el modelo a los datos históricos El modelo de adopción elegido es la versión ABM del
de las distintas instancias. El modelo ABM para Creature modelo de Bass [8], [16]. En el modelo de adopción de Bass,
Party modela los usuarios existentes como agentes con un un agente básico puede hacerse premium con una probabilidad
factor de escala de 2:1, por lo que 20000 agentes representan que incluye tanto el efecto de la publicidad (externalidad)
los 40000 usuarios activos de la aplicación. Esta escala se como el de la influencia social o boca a boca. La probabilidad
define para reducir el coste computacional manteniendo un de que un agente se haga premium debida a la interacción con
buen nivel de representatividad. otros agentes se regula por la fracción de sus vecinos que se
Los agentes representan usuarios básicos o premium del han hecho premium en los pasos anteriores. Por tanto, en cada
total de usuarios de la aplicación, dependiendo del ratio inicial paso un agente básico i puede hacerse premium debido a dos
de usuarios premium α sobre el total de usuarios. Duran- circunstancias:
te la inicialización del modelo, cada agente es inicializado
1. Innovación: con probabilidad p̂ (coeficiente de innova-
como usuario básico o premium aleatoriamente. Debido a
ción), p̂ ∈ (0, 1), un agente básico puede hacerse premium
la aleatoriedad del modelo cada ejecución puede resultar en
debido a información externa a la red.
distintos patrones de difusión y resultados finales, por lo
2. Imitación: con probabilidad q̂ (coeficiente de imitación),
que usamos simulaciones de Monte-Carlo (MC) y ejecutamos
q̂ ∈ (0, 1), un agente básico puede hacerse premium
múltiples veces la simulación. Cada agente toma decisiones
observando el estado de sus vecinos, donde f es la
ası́ncronamente, es decir, sin mecanismos de sincronización
fracción de vecinos premium.
con el resto de agentes, dado que ası́ el modelo se asemeja
más a un modelo de simulación continuo, más cercano a la En estas circunstancias podemos modelar el proceso de
realidad [12]. adopción premium siguiendo la Ecuación 2 [12]. Un agente
A puede hacerse premium en un step t si adoptar devuelve 1,
B. Actualización del estado de los agentes y de su red donde r, s ∈ [0, 1) son números aleatorios generados usando
Los agentes tienen distintas variables de estado para re- una distribución uniforme y fA es la fracción de vecinos
presentar la transición de usuario básico a premium. En el premium de A.

504
XIII Congreso Español en Metaheurı́sticas y Algoritmos Evolutivos y Bioinspirados

( cedimiento de búsqueda local implementa una estrategia tipo


1, si r < p̂ ∨ s < fA q̂, hill climbing [19]. Partiendo de una solución aleatoria, refina
adoptartA (r, s) = (2)
0, e.o.c. la calidad de la solución incrementando o decrementando el
valor de uno de los parámetros de manera iterativa. Nuestra
III. M ETAHEUR ÍSTICAS PARA CALIBRACI ÓN búsqueda local considera la variable incremento, que regula
En esta sección presentamos nuestra propuesta para calibrar la variación aplicada a los parámetros de la solución. En cada
ABM usando métodos automáticos basados en metaheurı́sti- iteración, la búsqueda local se moverá al primer vecino que
cas. La calibración automática es un proceso intensivo que mejore su fitness por un umbral dado.
usa una medida de error para comparar la salida del modelo
B. GA
con datos reales, modificando sus parámetros para encontrar la
configuración que más se ajuste a los datos reales [17], [18]. Diseñamos nuestro algoritmo genético (GA) siguiendo una
Medimos la calidad del modelo ejecutando una simulación y estrategia generacional donde cada nueva generación reem-
comparando su salida con los datos reales. En este trabajo plaza a la anterior [20]. Fijamos el tamaño de población del
hemos considerado metaheurı́sticas para calibración dado que algoritmo en 100 invidividuos y el el número de generaciones
los parámetros del ABM no muestran interacciones lineales y en 200. Nuestra implementación usa selección por torneo
la mejor opción es usar un algoritmo de optimización no-lineal [19], con k siendo el tamaño del torneo. También incluimos
que pueda gestionar un espacio de búsqueda muy amplio [17], elitismo débil, por lo que el mejor padre siempre pasa a
[26], [27]. Aun ası́, elegir la metaheurı́stica más adecuada la siguiente generación. Como estrategia de cruce elegimos
para calibrar ABM no es trivial dado que hay que tener en un cruce multipunto PMX con probabilidad pc para cada
cuenta dos criterios opuestos: la exploración del espacio de individuo. Respecto a la estrategia de mutación, cada individuo
búsqueda (diversificación) y la explotación de las soluciones tendrá una probabilidad pm de reiniciar uno de sus parámetros
más prometedoras (intensificación). (genes), sustituyendo su valor por un número aleatorio usando
En general, las metaheurı́sticas elegidas modificarán el una distribución uniforme en el intervalo [0, 1].
conjunto de parámetros del modelo para ajustarse a los datos C. PSO
reales de las distintas instancias. Calibramos cuatro parámetros
Para nuestra implementación de Particle Swarm Optimi-
reales del modelo anteriormente descrito: los dos parámetros
zation (PSO) [22] consideramos también una población de
que regulan la estacionalidad d, f ∈ [0, 1], el coeficiente de
100 individuos y 200 iteraciones. Cada individuo considera 5
innovación p̂ ∈ [0, 1], y el coeficiente de imitación q̂ ∈ [0, 1].
vecinos que se asignan aleatoriamente durante la inicialización
Las metaheurı́sticas seleccionadas usan la misma función de
del algoritmo. En cada iteración, cada individuo se mueve
fitness, que determina la calidad del modelo con relación a los
(modifica sus valores) considerando su mejor configuración
datos reales de usuarios premium. Para evaluar el ajuste de un
conocida, el mejor de sus vecinos, y el mejor global. Este
modelo utilizamos cada dataset R y lo dividimos en Rtrain
movimiento se calcula utilizando cuatro parámetros que actúan
y Rtest para seguir un enfoque de validación hold-out [27].
como pesos: velocidad (vc ), mejor personal (pc ), mejor vecino
Ambos conjuntos tienen sus variables de entorno correspon-
(ic ), y mejor global (gc ).
dientes Etrain y Etest , que definen las condiciones como el
estado de la red social y el número de usuarios premium. D. DE
Utilizaremos 15 ejecuciones de MC, siendo la estimación de El diseño que hemos elegido para differential evolution (DE)
error ǫ(Rtrain , M (P ∗ , Etrain )) la media del ajuste en estas [21] considera una población de 100 invidividuos y se ejecuta
15 ejecuciones de la simulación. En nuestro caso elegimos L2 durante 200 generaciones. La variante utilizada es DE/rand/2,
o distancia euclı́dea para calcular el error ǫ: que genera el vector donante a partir de la siguiente ecuación:
v
un−1 xi (G + 1) = xr1 (G) + F (xr2 (G) − xr3 (G)), donde xi es el
2
uX vector generado y r1, r2, y r3 son soluciones diferentes. F
L =t |VM (i) − VR (i)|2 ,
es un parámetro del algoritmo que actúa de amplificador de
i=0
la mutación. Esta variante genera nuevos individuos usando el
donde n es el número de puntos del histórico y VM y VR son vector donante con una probabilidad definida por el parámetro
los vectores de salida (nuevos usuarios premium) del modelo CR.
y de la instancia respectivamente. Por último, hemos imple-
mentado las metaheurı́sticas en Java utilizando el framework E. CMA-ES
ECJ [28]. Las secciones siguientes presentan los detalles de Covariance matrix adaptation evolution strategy (CMA-ES)
las metaheurı́sticas elegidas: hill climbing [19], algoritmos [23] es otro algoritmo bio-inspirado que desarrolla la mutación
genéticos [20], differential evolution [21], PSO [22], y CMA- de su población (o recombinación) de acuerdo a una matriz de
ES [23]. covarianza. CMA-ES suele funcionar muy bien con problemas
similares al nuestro, ya que los parámetros son valores reales y
A. HC el tamaño del conjunto a calibrar es pequeño. Hemos elegido
Hemos definido una búsqueda local para comparar su ren- la variante (µ/µI , λ)-CMA-ES, donde en cada iteración se
dimiento con las metaheurı́sticas poblacionales. Nuestro pro- combinan los mejores µ candidatos con λ nuevas soluciones.

505
XVIII Conferencia de la Asociación Española para la Inteligencia Artificial

IV. E XPERIMENTACI ÓN


A. Configuración
La Tabla I muestra los parámetros que hemos usado para
nuestros experimentos. Nuestro proceso de calibración consi-
dera datos reales de Creature Party divididos en cuatro datasets
diferentes. Estos datasets contienen el número de usuarios
premium por dı́a para periodos de tiempo distintos que a su
vez dividimos en training y test. El primer dataset contiene
91 dı́as, con 60 para training y 31 para test. El segundo y el
tercer dataset consideran 46 dı́as, divididos en 31 dı́as para
training y 15 para test. El cuarto y último dataset contiene 45
dı́as, con 30 para training y 15 para test. Figura 1: Evolución del fitness de los algoritmos poblacionales
para el dataset 3.
Tabla I: Valores de los parámetros de las metaheurı́sticas

General GA PSO
Nombre Valor Nombre Valor Nombre Valor
Evaluaciones 20,000 pc 1.0 vc 0.3
Individuos 100 pm 0.2 pc 0.04
Generaciones 200 k 3 ic 0.3
Monte-Carlo 15 gc 0.3
HC DE CMA-ES
Nombre Valor Nombre Valor Nombre Valor
incremento 0.01 F 0.6 λ 8
umbral 0.01 CR 0.3 µ 4

Figura 2: Comparación entre la salida del modelo calibrado y


los datos históricos de training del dataset 2 (31 dı́as).
B. Resultados de calibración
Mostramos los resultados de calibración obtenidos por las
metaheurı́sticas en la Tabla II. Estos resultados muestran el se ajusta a los datos históricos. Por ejemplo en el step 4, el
ajuste de la mejor solución después de 15 ejecuciones con número de usuarios premium fue 204 y la simulación predice
distintas semillas. Este ajuste se presenta como el fitness medio 196. Aunque hay excepciones, como el dı́a 2 donde el número
y la desviación tı́pica de las 15 simulaciones de MC para de usuarios premium fue 511 pero el modelo predice 404.
training y test. Como se puede observar, el fitness de la
mayorı́a de metaheurı́sticas es mejor para los datasets más C. Análisis de sensibilidad
pequeños (2, 3, y 4), lo cual parece coherente dado que su Nuestros experimentos señalan CMA-ES como el mejor
comportamiento deberı́a ser más fácil de ajustar. Por otro lado, método, consiguiendo los mejores resultados en tres conjuntos
los valores de desviación tı́pica son similares. Con respecto al de training y uno de test. En esta sección hacemos un análisis
ajuste de las soluciones, estros resultados muestran que CMA- de sensibilidad a las soluciones generadas por CMA-ES para
ES supera a los otros algoritmos por un pequeño margen. cada dataset. Los scatter plots de las Figuras 3 y 4 muestran
Además de valores de fitness bajos, CMA-ES consigue unos los valores de los coeficientes de Bass y los parámetros de
valores de desviación tı́pica reducidos, por lo que se muestra estacionalidad para los soluciones generadas por CMA-ES
estable con distintas semillas. durante el proceso de calibración. Estas soluciones provienen
Mostramos el rendimiento de los algoritmos poblacionales de una única ejecución de la metaheurı́stica, recogidas desde
durante el proceso de calibración usando el dataset 3 en la el principio de la calibración hasta que el algoritmo termina,
Figura 1. Esta gráfica muestra la evolución del fitness de la filtrando las soluciones que superen 500 de fitness. Este filtro
mejor solución en cada generación, por lo que el progreso permite concentrar el análisis en las mejores soluciones.
de los algoritmos se muestra cada 100 evaluaciones. Estos Podemos observar que los valores de los coeficientes de
resultados muestran que los algoritmos alcanzan valores de Bass de las soluciones para los distintos dataset son similares.
error reducidos rápidamente y sugieren que aumentar el núme- Por ejemplo, para el primer dataset (Figura 3a) las mejores
ro de evaluaciones no mejorarı́a el resultado final de manera soluciones rondan p̂ = 0,03 y q̂ = 0,16. En cambio el
significativa. coeficiente de imitación es ligeramente más bajo en el resto de
En la Figura 2 mostramos una comparación entre los datos datasets (q̂ = 0,1). En el caso del coeficiente de innovación,
históricos y la salida del modelo calibrado para la mejor los dos primeros dataset (Figura 3a y 3b) muestran sus
solución encontrada por CMA-ES para el segmento training mejores valores alrededor de p̂ = 0,03 y los dos siguientes
del dataset 2. Estos resultados muestran que el proceso de ca- (Figura 3c y 3d)) alrededor de p̂ = 0,045. En estos últimos
libración obtiene buenos resultados y que el modelo calibrado observamos también mayor dispersión en sus soluciones con

506
XIII Congreso Español en Metaheurı́sticas y Algoritmos Evolutivos y Bioinspirados
Tabla II: Fitness medio y desviación tı́pica de cada metaheurı́stica para cada dataset
Dataset 1 Dataset 2 Dataset 3 Dataset 4
TRA TEST TRA TEST TRA TEST TRA TEST
HC 365.6 (18.7) 349.2 (21.9) 256.0 (17.2) 211.0 (20.3) 301.1 (19.8) 351.7 (15.7) 336.1 (30.3) 222.1 (20.1)
GA 351.9 (19.6) 333.7 (22.4) 247.6 (24.8) 182.1 (19.1) 286.0 (22.4) 331.4 (20.0) 304.5 (26.0) 283.7 (31.5)
DE 351.8 (18.9) 335.3 (20.4) 245.3 (22.0) 194.8 (20.5) 286.8 (21.6) 348.0 (17,0) 301.6 (17.6) 283.5 (34.2)
PSO 347.2 (15.0) 332.5 (20.8) 246.1 (13.8) 191.7 (19.5) 308.0 (19.7) 261.5 (22.7) 316.5 (31.5) 365.2 (20.4)
CMA-ES 326.9 (18.2) 296.4 (15.6) 248.1 (13.9) 164.8 (17.0) 286.0 (16.9) 318.1 (22.3) 303.3 (24.4) 267.2 (26.4)

(a) Dataset 1 (b) Dataset 2

(c) Dataset 3 (d) Dataset 4

Figura 3: Scatter plots para el análisis de sensibilidad sobre los coeficientes de Bass (p/q).

mejor fitness, lo que podrı́a indicar que estos dataset tienen elegido las soluciones calibradas por CMA-ES, la mejor
mayor tolerancia a distintos valores de estos parámetros. metaheurı́stica según nuestra experimentación, para desarrollar
Globalmente, se puede observar que las soluciones muestran un análisis de sensibilidad sobre sus parámetros. Usando estas
mayor dispersión para el coeficiente de innovación (p̂), lo que soluciones, hemos visualizado los valores de los coeficientes
indica que es un parámetro más sensible. En comparación con del modelo de Bass y los parámetros de estacionalidad.
otras configuraciones del modelo de Bass para otros mercados Los resultados de calibración de las distintas metaheurı́sticas
publicados anteriormente en la literatura de marketing [12], los muestran valores de fitness cercanos. Sin embargo, CMA-ES
modelos calibrados presentan un valor alto para el coeficiente consigue mejores soluciones por lo que lo distinguimos como
de innovación (p̂) y un valor bajo para el coeficiente de el mejor método, lo cual es coherente con publicaciones ante-
imitación (q̂). riores sobre optimización continua utilizando metaheurı́sticas.
Por último, los scatter plots de la Figura 4 muestran los El análisis de sensibilidad aplicado sobre las soluciones
valores de estacionalidad para los soluciones encontradas para calibradas por CMA-ES muestra que sus parámetros para
los distintos datasets. Estas soluciones muestran valores cons- los distintos dataset son similares. Además estos valores son
tantes en los diferentes datasets, con valores que rondan d=0,1 diferentes de otros modelos similares [12], lo que podrı́a
para la probabilidad de jugar entre semana y f =0,2 para la indicar que las aplicaciones freemium como Creature Party
probabilidad de jugar en fin de semana. Estos parámetros tienen un componente de innovación mayor. Por último, dado
también muestran mayor concentración en el parámetro (d), que nuestro análisis no tiene en cuenta las caracterı́sticas
lo que sugiere que el ABM de Creature Party es más sensible especı́ficas del diseño del ABM subyacente, pensamos que
a los cambios en la probabilidad de jugar entre semana que nuestros resultados podrı́an ser generalizables a otros modelos.
en para la probabilidad de jugar en el fin de semana.
AGRADECIMIENTOS
V. C ONCLUSIONES Este trabajo está financiado por el Ministerio de Economı́a
En este artı́culo hemos aplicado distintas metaheurı́sticas y Competitividad bajo el proyecto NEWSOCO (ref. TIN2015-
a la calibración de un modelo ABM usando datos reales. 67661-P), incluyendo Fondos Europeos de Desarrollo Regio-
Después de comparar el rendimiento de los algoritmos, hemos nal (ERDF).

507
XVIII Conferencia de la Asociación Española para la Inteligencia Artificial

(a) Dataset 1 (b) Dataset 2

(c) Dataset 3 (d) Dataset 4

Figura 4: Scatter plots con los valores de los parámetros de estacionalidad: entre semana (d) y fin de semana (f ).

R EFERENCIAS [15] F. Viger and M. Latapy, “Efficient and simple generation of random
simple connected graphs with prescribed degree sequence,” in Lecture
[1] V. Kumar, “Making freemium work: Many start-ups fail to recognize Notes in Computer Science. Computing and Combinatorics. Springer,
the challenges of this popular business model.” Harvard Business 2005, vol. 3595, pp. 440–449.
Review, vol. 92, no. 5, pp. 27–29, May 2014. [Online]. Available: [16] F. M. Bass, “A new product growth model for consumer durables,”
https://hbr.org/2014/05/making-freemium-work Management Science, vol. 36, no. 9, pp. 1057–1079, 1969.
[2] M. Trusov, R. E. Bucklin, and K. Pauwels, “Effects of word-of-mouth [17] R. Oliva, “Model calibration as a testing strategy for system dynamics
versus traditional marketing: Findings from an internet social networking models,” European Journal of Operational Research, vol. 151, no. 3,
site,” Journal of Marketing, vol. 73, no. 5, pp. 90–102, 2009. pp. 552–568, 2003.
[3] B. Libai, R. Bolton, M. S. Bügel, K. De Ruyter, O. Götz, H. Risselada, [18] R. G. Sargent, “Verification and validation of simulation models,” in
and A. T. Stephen, “Customer-to-customer interactions: broadening the Proceedings of the 37th conference on Winter simulation, 2005, pp.
scope of word of mouth research,” Journal of Service Research, vol. 13, 130–143.
no. 3, pp. 267–282, 2010. [19] E.-G. Talbi, Metaheuristics: from design to implementation. John Wiley
[4] O. Hinz, B. Skiera, C. Barrot, and J. U. Becker, “Seeding strategies & Sons, 2009.
for viral marketing: An empirical comparison,” Journal of Marketing, [20] T. Back, D. B. Fogel, and Z. Michalewicz, Handbook of evolutionary
vol. 75, no. 6, pp. 55–71, 2011. computation. Bristol (UK): IOP Publishing Ltd., 1997.
[5] R. Van der Lans, G. Van Bruggen, J. Eliashberg, and B. Wierenga, “A [21] K. Price, R. M. Storn, and J. A. Lampinen, Differential evolution: a
viral branching model for predicting the spread of electronic word of practical approach to global optimization. Springer Science & Business
mouth,” Marketing Science, vol. 29, no. 2, pp. 348–365, 2010. Media, 2006.
[6] D. J. Watts and P. S. Dodds, “Influentials, networks, and public opinion [22] J. Kennedy and R. Eberhart, “Particle swarm optimization,” in Neural
formation,” Journal of Consumer Research, vol. 34, no. 4, pp. 441–458, Networks, 1995. Proceedings., IEEE International Conference on, vol. 4.
2007. IEEE, 1995, pp. 1942–1948.
[7] P. Schmitt, B. Skiera, and C. Van den Bulte, “Referral programs and [23] N. Hansen and A. Ostermeier, “Completely derandomized self-
customer value,” Journal of Marketing, vol. 75, no. 1, pp. 46–59, 2011. adaptation in evolution strategies,” Evolutionary computation, vol. 9,
[8] M. Chica and W. Rand, “Building agent-based decision support systems no. 2, pp. 159–195, 2001.
for word-of-mouth programs: A freemium application,” Journal of [24] P. W. Farris, N. T. Bendle, P. E. Pfeifer, and D. J. Reibstein, Marketing
Marketing Research, vol. 54, no. 5, pp. 752–767, 2017. [Online]. metrics: The definitive guide to measuring marketing performance,
Available: https://doi.org/10.1509/jmr.15.0443 2nd ed. Wharton School Publishing, 2010.
[9] C. M. Macal and M. J. North, “Tutorial on agent-based modeling and [25] R. Milo, N. Kashtan, S. Itzkovitz, M. Newman, and U. Alon, “On the
simulation,” in Proceedings of the 37th conference on Winter simulation. uniform generation of random graphs with prescribed degree sequences,”
ACM, 2005, pp. 2–15. arXiv preprint http://arxiv.org/abs/cond-mat/, 2004.
[10] J. M. Epstein, Generative social science: Studies in agent-based compu- [26] J. H. Miller, “Active nonlinear tests (ANTs) of complex simulation
tational modeling. Princeton University Press, 2006. models,” Management Science, vol. 44, no. 6, pp. 820–830, 1998.
[11] M. A. Janssen and E. Ostrom, “Empirically based, agent-based models,” [27] F. Stonedahl and W. Rand, “When does simulated data match real data?
Ecology and Society, vol. 11, no. 2, p. 37, 2006. Comparing model calibration functions using genetic algorithms,” in
[12] W. Rand and R. T. Rust, “Agent-based modeling in marketing: Guideli- Advances in Computational Social Science, ser. Agent-Based Social
nes for rigor,” International Journal of Research in Marketing, vol. 28, Systems. Springer, Japan, 2014, vol. 11, pp. 297–313.
no. 3, pp. 181–193, 2011. [28] S. Luke, L. Panait, G. Balan, S. Paus, Z. Skolicki, J. Bassett, R. Hubley,
[13] M. Trusov, W. Rand, and Y. V. Joshi, “Improving prelaunch diffusion and A. Chircop, “Ecj: A java-based evolutionary computation research
forecasts: Using synthetic networks as simulated priors,” Journal of system,” Downloadable versions and documentation can be found at the
Marketing Research, vol. 50, no. 6, pp. 675–690, 2013. following url: http://cs. gmu. edu/eclab/projects/ecj, 2006.
[14] M. Haenlein and B. Libai, “Targeting revenue leaders for a new product,”
Journal of Marketing, vol. 77, no. 3, pp. 65–80, 2013.

508
XIII Congreso Español en Metaheurı́sticas y Algoritmos Evolutivos y Bioinspirados

An empirical validation of a new memetic CRO


algorithm for the approximation of time series*
* Note: The full contents of this paper have been published in the volume Lecture Notes in Artificial Intelligence 11160 (LNAI 11160)

Antonio M. Durán-Rosal Pedro A. Gutiérrez


Dept. of Computer Science and Numerical Analysis Dept. of Computer Science and Numerical Analysis
University of Córdoba University of Córdoba
Córdoba, Spain Córdoba, Spain
aduran@uco.es pagutierrez@uco.es

Sancho Salcedo-Sanz César Hervás-Martı́nez


Department of Signal Processing and Communications Dept. of Computer Science and Numerical Analysis
Universidad de Alcalá University of Córdoba
Madrid, Spain Córdoba, Spain
sancho.salcedo@uah.es chervas@uco.es

Abstract—The exponential increase of available temporal data


encourages the development of new automatic techniques to re-
duce the number of points of time series. In this paper, we propose
a novel modification of the coral reefs optimization algorithm
(CRO) to reduce the size of the time series with the minimum
error of approximation. During the evolution, the solutions are
locally optimised and reintroduced in the optimization process.
The hybridization is performed using two well-known state-
of-the-art algorithms, namely Bottom-Up and Top-Down. The
resulting algorithm, called memetic CRO (MCRO), is compared
against standard CRO, its statistically driven version (SCRO)
and their hybrid versions (HCRO and HSCRO, respectively). The
methodology is tested in 15 time series collected from different
sources, including financial problems, oceanography data, and
cardiology signals, among others, showing that the best results
are obtained by MCRO.
Index Terms—Time series size reduction, segmentation, coral
reefs optimization, memetic algorithms

509
XVIII Conferencia de la Asociación Española para la Inteligencia Artificial

Modelling Mandible Articulation for Skull-Face


Overlay in Forensic Identification1
E. Bermejo, C. Campomanes-Álvarez, O. Cordón∗
A. Valsecchi, O. Ibáñez, and S.Damas Research Center on Information

Andalusian Institute on Data Science and Computational and Communication Technologies
Intelligence (DaSCI), University of Granada University of Granada
Email: enrique.bermejo@decsai.ugr.es, sdamas@ugr.es Email: ocordon@decsai.ugr.es

I. I NTRODUCTION by relatives, the missing person usually appears in relaxed


situations, most of them smiling or with the mouth slightly
Forensic anthropology is a sub-field of physical anthropol-
open. Generally, cases with grimaces or forced poses are
ogy that involves applying scientific knowledge to the collec-
discarded due to the fact that the mandible is in an exaggerated
tion and analysis of medico-legal information. It includes the
position and these kinds of facial expressions distort the soft
recovery, identification, and description of human skeletal re-
tissue of the face. Additionally, each individual comparison
mains [2]. Currently, several forensic identification techniques
should involve the analysis of one skull against more than one
are available, i.e., DNA samples, fingerprint recognition, or
AM photograph of the same person to significantly increase
dental records. When none of the previous methods can be
the reliability and accuracy of the method [6]. Overall, this
applied, the analysis of skeletal remains becomes the last resort
is a very time-consuming task even using an automatic SFO
of forensic identification. One of the alternative techniques
method.
is craniofacial superimposition (CFS) [3], which involves the
superimposition of a complete skull (or a skull model) with a II. M OTIVATION , P ROPOSAL , AND C ONCLUSIONS
number of ante mortem (AM) images of an individual. CFS
Those photographs where subjects appear with their mouths
is thus a technique used when only skeletal information is
open reduce the confidence of the identification. Therefore,
available for the forensic assessment and other techniques
it is essential to model the articulation of the mandible in
such as DNA or dental record analysis are not possible or
order to improve CFS reliability, considering that we only have
conclusive.
skeletal information available to infer its movement. In our
Traditional CFS techniques are tedious and based on a
contribution, we have modeled and integrated the mandible
‘trial and error’ process requiring several hours of manual
articulation within the SFO optimization algorithm.
processing to obtain a correct superimposition. Therefore,
In particular, we considered a simple model [7] to estimate
there is a strong interest on designing automatic methods
and parameterize the mandible aperture movement using the
to assist the CFS identification procedure [4]. The process
aperture percentage. Moreover, we proposed different design
requires a forensic expert to position the skull in the same
alternatives to integrate the estimation of the mandible aperture
pose as the face in the photograph. This process is known as
within the scheme of the current state-of-the-art SFO opti-
Skull-Face Overlay (SFO).
mization algorithm [8], namely RCGA. Specifically, RCGA
Up to now, all computer-based SFO methods have con- is a real-coded, elitist genetic algorithm that performs the
sidered the mandible as a rigid part of the skull. These registration of the 3D skull with the 2D AM photograph.
methods usually follow one of the following approaches to Our proposal involves three different design alternatives
approximate the mandible aperture [5]: i) Before capturing to balance the exploration-exploitation trade-off during the
the 3D model, the mandible was manually located relative to optimization. We have performed a thorough experimental
the cranium so that the model resembled the facial expression study to analyze the suitability of the proposed articulation
of the photograph under study; and ii) Once the mandible and model to the SFO technique. Additionally, we have designed
the cranium were scanned, the 3D models were positioned a ground-truth database to allow an objective evaluation of the
according to the relative aperture in the photograph using 3D reliability of our proposal.
modeling software.
According to the results of this experimentation (Figure 1),
Such a simplification (anatomically incorrect) causes a the application of a simple mandible aperture model has
negative impact on the accuracy of the automatic SFO method. proven its effectiveness, significantly improving the accu-
As the AM images used to perform CFS are typically provided racy and the versatility of the state-of-the-art automatic SFO
1 This article is a summary of the work published in Information Sciences
method. Such an outstanding performance facilitates the use
[1], to be considered as a part of the CAEPIA’18 Key Works. The motivation, of facial photos where the individual either smiles or opens
the main contributions and some conclusions are briefly summarized. the mouth partially. Such photos have been usually discarded

510
XIII Congreso Español en Metaheurı́sticas y Algoritmos Evolutivos y Bioinspirados

in real identification scenarios. The availability of new AM


evidence is a crucial consequence of this work. Indeed, the use
of multiple facial photos of the same individual is essential to
increase the reliability of the identification based in CFS [9]
In our proposal, the expert is only required to pinpoint
the incisors, and the mandibular and cranial condyles, a
much simpler task to carry out. This task is only performed
once, no matter which number of AM photos the skull is
compared with. Thereby, our articulated SFO approach avoids
entirely the time-consuming and error-prone positioning of the
mandible, besides adding versatility to the procedure as it can
adapt its pose to different mouth openings in the photographs.
ACKNOWLEDGMENT
This publication is supported by Spanish Ministerio de
Economı́a y Competitividad under the NEWSOCO project
(ref. TIN2015-67661-P) and the Andalusian Dept. of Inno-
vación, Ciencia y Empresa under project TIC2011-7745, both
including European Regional Development Funds (ERDF).
Dr. C. Campomanes Álvarez’s work has been supported by
Spanish MECD FPU grant AP-2012-4285. Dr. Ibáñez’s work
has been supported by Spanish MINECO Juan de la Cierva
Fellowship JCI-2012-15359.
R EFERENCES
[1] E. Bermejo, C. Campomanes-Álvarez, A. Valsecchi, O. Ibáñez, S. Damas,
and O. Cordón, “Genetic algorithms for skull-face overlay including
mandible articulation,” Information Sciences, vol. 420, pp. 200 – 217,
2017.
[2] M. Yoshino and S. Seta, “Skull-photo superimposition,” Encyclopedia of
Forensic Sciences, vol. 2, pp. 807–815, 2000.
[3] M. Yoshino, Craniofacial superimposition, in: C. Wilkinson and C. Rynn,
Eds. Craniofacial Identification, University Press, Cambridge, 2012.
[4] S. Damas, O. Cordón, O. Ibáñez, J. Santamarı́a, I. Alemán, M. Botella,
and F. Navarro, “Forensic identification by computer-aided craniofacial
superimposition,” ACM Computing Surveys, vol. 43, no. 4, pp. 1–27,
2011.
[5] M. I. Huete, O. Ibáñez, C. Wilkinson, and T. Kahana, “Past, present,
and future of craniofacial superimposition: Literature and international
surveys,” Legal Medicine, vol. 17, no. 4, pp. 267–278, 2015.
[6] S. Damas, C. Wilkinson, T. Kahana, E. Veselovskaya, A. Abramov,
R. Jankauskas, P. T. Jayaprakash, E. Ruiz, F. Navarro, M. I. Huete,
E. Cunha, F. Cavalli, J. Clement, P. Lestón, F. Molinero, T. Briers,
F. Viegas, K. Imaizumi, D. Humpire, and O. Ibáñez, Study on the
performance of different craniofacial superimposition approaches (II):
Best practices proposal. Forensic Science International, 2015, vol. 257.
[7] J. J. Lemoine, J. J. Xia, C. R. Andersen, J. Gateno, W. Buford, and
M. A. K. Liebschner, “Geometry-Based Algorithm for the Prediction of
Nonpathologic Mandibular Movement,” Journal of Oral and Maxillofa-
cial Surgery, vol. 65, no. 12, pp. 2411–2417, 2007.
[8] B. R. Campomanes-Alvarez, O. Ibanez, C. Campomanes-Alvarez,
S. Damas, and O. Cordón, “Modeling Facial Soft Tissue Thickness
for Automatic Skull-Face Overlay,” IEEE Transactions on Information
Forensics and Security, vol. 10, no. 10, pp. 2057–2070, oct 2015.
[9] D. Austin-Smith and W. R. Maples, “The reliability of skull/photograph
superimposition in individual identification,” Journal of Forensic Sci-
ences, vol. 39, no. 2, pp. 446–55, mar 1994.

Fig. 1. Visual SFO results: A1 (left images) and RCGA (right images) for
different frontal and lateral instances (Smile, 15, 30, and 40).

511
XVIII Conferencia de la Asociación Española para la Inteligencia Artificial

Propuestas de mejora para la evaluación del


arte evolutivo.
Francisco Fernández de Vega1 , Cayetano Cruz1 , Patricia Hernández2

I. R ESUMEN diferentes variaciones de los algoritmos evolutivos


En este trabajo se discute el modo de evaluar para generar lo que los autores consideran arte. De
adecuadamente el arte evolutivo, no tanto desde el hecho, el arte generativo se ha estado utilizando
punto de vista de la función de fitness, que tam- durante el siglo XX para, basado en medios fı́sicos,
bién, sino considerando el resultado final al que se quı́micos, mecánicos o en computadores, generar un
llega. En la aplicación tradicional de los algoritmos nuevo tipo de arte. Ya en los años 60, se organizó
evolutivos a la resolución de problemas el resultado en Londres una llamativa exposición en la que arte
obtenido es fácilmente evaluable y comparable con gráfico, poesı́a, música, etc, era generada mediante
otras metodologı́as, pues basta obtener una medida programas de computador [10].
cuantitativa de la calidad final de la solución. Sin El término arte es algo que depende de la sociedad,
embargo, en los procesos asociados al arte y diseño, y ha variado con frecuencia a lo largo de los siglos.
estas medidas objetivas no son tan sencillas. Este Como caso paradigmático de esta variación, cabe
trabajo, que se plantea como un posicionamiento destacar el rechazo que el salón de arte de Parı́s
sobre la cuestión de cómo evaluar apropiadamente el tuvo hacia los nuevos pintores denominados impre-
arte evolutivo, revisa alguna de las propuestas que sionistas, que decidieron abrir un salón alternativo
se han producido en este ámbito, pasando por la donde mostrar su obra [6]. En sus inicios, el im-
evaluación interactiva, el test de turing para el arte presionismo era rechazado por la crı́tica -compuesta
ası́ como algunas competiciones internacionales en fundamentalmente por los eruditos y artistas más
el dominio de los algoritmos evolutivos, para discutir tradicionales de la época, aunque fue recibiendo
finalmente el papel que otros actores fundamentales, y aceptación del público de forma gradual, y llegó con
frecuentemente olvidados en el mundo del arte, están el tiempo a ser considerado una nueva forma de
teniendo en este arte generativo basado en evolución: expresión artı́stica al mismo nivel que el arte más
el público, la crı́tica, galerı́as de arte, museos, etc. clásico. Al impresionismo le siguieron otras muchas
Una vez discutida la cuestión, y planteada la solución tendencias en el siglo XX, como el expresionismo,
propuesta, se describen algunas experiencias en las cubismo, futurismo, dadaismo, surrealismo, etc. Y es
que algunos, si no todos, de estos actores han sido que las formas artı́sticas trazan lı́neas que navegan
incluidos en el proceso, y los resultados que se han arrastrando esa cadena de colisiones haciendo del arte
obtenido. Entendemos que estas experiencias pueden un lugar activo, positivo, lúcido, versátil y maleable.
servir de ejemplo para otras iniciativas artı́sticas que Del mismo modo, en el mundo de la música seria,
puedan surgir en este ámbito de aplicación de los al- los comienzos del siglo XX en Estados Unidos de
goritmos evolutivos, y a la vez la propuesta sirva para América vieron nacer una nueva forma de expresión
clarificar el papel del arte evolutivo en el contexto musical fruto del mestizaje de culturas y tradiciones
artı́stico en general. provenientes de varios continentes. La música Jazz,
que inicialmente era despreciada como música de
II. I NTRODUCCI ÓN raza (eufemismo para hablar de personas de color),
La aplicación de los algoritmos evolutivos al arte fue conquistando los gustos del público, y poste-
y diseño no es nuevo [11]. Desde la década de los riormente, también la crı́tica musical entendió sus
noventa, son muchos los trabajos que han utilizado fundamentos e importancia, de tal modo que alguno
de los compositores y músicos Jazz de color, son hoy
1 Universidad de Extremadura, 06800 Mérida, España. dı́a considerados como alguno de los más grandes
fcofdez@unex.es, ccruz@unex.es
2 Universidad de Sevilla, España artistas y compositores de la historia, incluyendo
patriciapahr@gmail.com a Luis Amstrong -trompetista- y Duke Ellington -

512
XIII Congreso Español en Metaheurı́sticas y Algoritmos Evolutivos y Bioinspirados

pianista-, reconocido actualmente este último como modo: La sección III describe las dificultades pa-
uno de los más grandes compositores americanos de ra evaluar adecuadamente el arte evolutivo. En la
la historia [9]. sección IV presentamos nuestro posicionamiento al
También lo contrario ha sucedido con frecuencia: respecto, con ideas sobre como mejorar. La sección
tendencias artı́sticas consideradas desde el inicio co- V presenta algunos resultados obtenidos mediante la
mo arte formal o académico no han sido aceptadas propuesta descrita, y finalmente la sección VI resume
por el público de forma mayoritaria, tal como sucede nuestras conclusiones.
con el serialismo y dodecafonismo de Schoemberg,
que aunque de utilidad innegable asociado a otras III. E STADO DEL ARTE
formas de arte, como el cine, sigue despertando poco Cuando los investigadores decidieron por primera
interés entre el público en general [2], y pocas son vez aplicar los algoritmos evolutivos en procesos de
las compañı́as, si es que hubiera alguna, que puedan creación artı́stica, se encontraron un problema, que
sobrevivir interpretando solamente obras de este tipo es la clave en la evaluación del arte a lo largo de
sin ayudas del sector público. Quizá sea necesaria la historia: ¿Cómo evaluar correctamente la calidad
una reflexión adicional sobre qué tipo de forma de estética de una imagen surgida de la evolución?
arte se adapta mejor a la naturaleza intrı́nseca del ser La solución tradicional ha sido permitir que sean
humano, que es finalmente el destinatario final de la los humanos quienes evalúen la calidad, produciendo
misma, y sobre si el término arte se ha desvirtuado o ası́ un cambio profundo en los algoritmos evolutivos
no en el siglo XX y convertido en cajón de sastre para tradicionales, dando lugar a lo que se conocen como
incluir elementos que quizá debieran categorizarse de Algoritmos Evolutivos Interactivos, con multitud de
otro modo. Como en otros ámbitos sociales, estirar en aplicaciones hoy dı́a [13].
deması́a el significado de un término puedo provocar Ası́, las herramientas que se han desarrollado y
que el mismo pierda su contenido semántico. Pero están disponibles para el arte evolutivo, tal como Pic-
más allá de esta reflexión, conviene aquı́ considerar el Breeder, se basan en el buen criterio de las personas
arte evolutivo (y generativo en términos más amplios) a la hora de elegir lo que se considere estéticamente
en relación al arte humano. más razonable [12].
Podemos resumir diciendo, que en la evolución y Ha habido intentos de encerrar en fórmulas ma-
cambio que el término arte ha tenido a lo largo de los temáticas la calidad estética de una obra plástica, pero
siglos, se han visto implicados no sólo los eruditos, el resultado no ha sido muy afortunado [8]. También
que podrı́amos describir como la crı́tica, sino también se ha intentado evaluar cual es la opinión del público
el público que con su favor impulsa o no a ciertos sobre el arte plástico, cuales son sus preferencias, y
artistas, y los museos que acogen y exponen lo que con un procedimiento basado en encuestas, se llegó
se considera arte. a conclusiones poco satisfactorias [3].
Sin embargo, cuando nos fijamos en los resultados Trabajos como este último ponen el dedo en la
obtenidos mediante procesos evolutivos en el mundo llaga: la participación de un alto número de usuarios
del arte [11] -y centrándonos aquı́ en el arte plástico- diferentes dando su opinión sobre qué es más apre-
no todos los actores anteriores han sido tenidos en ciado en una obra de arte, cuyo ejemplo más notable
cuenta, como veremos a continuación. es Picbreeder, no tiene necesariamente que conducir
El arte contiene una parte de naturaleza transitoria a un resultado adecuado.
y circunstancial propia de un determinado espacio Pero entonces, si la participación de usuarios no
tiempo y en este trabajo se pretende revisar la impor- es suficiente para garantizar la calidad del resultado,
tancia de cada uno de esos actores en el arte evolutivo, ¿qué otros elementos serı́a necesario incluir?
y alguno de los resultados más llamativos obtenidos En algunos trabajos recientes se habla de la posibi-
cuando todos los actores participan de algún modo lidad de generar un test de turing para el arte basado
en el proceso. en computador [1], que podrı́a aplicarse por tanto al
Este artı́culo por tanto pretende mostrar el camino arte evolutivo. Pero precisamente en este modelo hay
hacia una correcta evaluación de trabajos artı́sticos varios elementos no triviales:
generados mediante procedimientos basados en algo- ¿Quiénes deben actuar como jurado?
ritmos evolutivos, y describe experiencias recientes ¿Con qué arte humano comparamos, con el
que tienen en cuenta la propuesta planteada. producido por artistas profesionales, o cualquier
El resto del artı́culo se estructura del siguiente persona en general?

513
XVIII Conferencia de la Asociación Española para la Inteligencia Artificial

El hecho de que un jurado no sepa si una obra IV-A. El Test de Turing para el arte
ha sido generada por ordenador o no, ¿Le otorga
automáticamente un sello de calidad?
Como se describı́a más arriba, la dificultad para
Estas son las tres preguntas básicas a las que nos
medir la calidad estética de las obras, ha llevado a
vamos a enfrentar en la siguiente sección, descri-
proponer la necesidad de un Test de Turing para el
biendo alguna de las propuestas en las que hemos
arte: si un jurado humano no puede distinguir una
trabajado en los últimos años, y los resultados que
obra generada por un computador de una elaborada
hemos conseguido para intentar proponer modelos
por un humano, el trabajo, se dirı́a, supera el Test de
más adecuados para el arte evolutivo.
Turing.
IV. M ETODOLOG ÍA : S OBRE LA FORMA DE Hay tres razones para cuestionar la utilidad de un
EVALUAR EL ARTE EVOLUTIVO test como el anterior. En primer lugar, la indecidibi-
lidad sobre el origen de una obra -humana o creada
Hasta la fecha, las buenas intenciones han do- por computador- no tiene porqué otorgarle de forma
minado el arte evolutivo. En general, un algoritmo automática un sello de calidad. En el arte tradicional,
interactivo -que es el utilizado de forma tradicional la importancia del reconocimiento del artista detrás de
en este contexto- funciona del siguiente modo: todas la obra se debe principalmente a cuestiones históricas,
las operaciones del algoritmos son llevadas a cabo de de consideraciones académicas, favor del público, y,
modo estándar salvo la evaluación del fitness. Ası́, por último, del mercado del arte, que más que calidad,
los usuarios se encargan de ir decidiendo la calidad lo que evalúa es la cotización del artista firmante [14].
del ”producto en evolución”. Pero en este proceso,
el cansancio del usuario afecta al resultado del pro- Pero en realidad hay una segunda razón que per-
ceso, como ya ha sido reconocido con anterioridad mite cuestionar el mencionado test tenga sentido:
[4]. Aunque existen propuestas que tratan de evitar algunas tendencias artı́sticas nacidas en el siglo XX,
este cansancio utilizando dispositivos no intrusivos generan resultados que fácilmente podrı́an confundir-
que analizan el comportamiento del usuario [3], el se con el producto de un programa de ordenador.
problema de quién evalúa la calidad -el usuario en En música, el serialismo y la atonalidad se basa
este caso- sigue presente. en procesos con un componente estocásticos, y que
Una vez que el algoritmo termina, el resultado aunque son llevados a cabo por personas, son sen-
obtenido en la última generación serı́a el producto cillamente emulables por computador (mucho más
generado. Pero en el arte evolutivo, la obra de arte que la música tonal de tradición clásica occidental,
producida, si se pretende que emule en calidad la en la que el alto número de reglas que la define
contraparte humana, deberı́a ser mostrada al público implica la construcción de sistemas basados en reglas,
y evaluada de forma similar al resto de obras de o con aprendizaje sobre casos conocidos, de alta
arte. En realidad no es esto lo que sucede en la complejidad [15]). Igualmente en el arte plástico,
mayorı́a de los casos; tı́picamente, los resultados el uso de herramientas digitales por parte de los
obtenidos mediante algoritmos evolutivos han sido artistas, podrı́a también inducir a error a los jurados,
presentados a la comunidad en sus propios foros, que confundiendo arte humano, en este caso, por arte
incluye revistas dónde los algoritmos son descritos y generado evolutivamente.
congresos especializados, tal como EvoMusart, o más En resumen, el Test de Turing no parece la herra-
generalistas que acogen cualquier resultado notable mienta necesaria para calificar la calidad de un re-
en el área. Pero en pocas ocasiones este proceso sultado generado mediante evolución. Quizá, pudiera
de exposición y muestra es utilizado para obtener ser más reveladora la apreciación de especialistas con
información de lo que el público opina. criterio artı́stico, como los curadores. No obstante,
Este modo de proceder, es bastante lejano a cómo más allá de la capacidad técnica para emular la
en realidad el mundo del arte funciona. Examinare- manera de hacer una obra, está la capacidad para
mos con detalle los tres puntos destacados anterior- elaborar un lenguaje diferenciado y reconocible, ası́
mente, y propondremos en cada caso cómo podrı́amos como el discurso de trasfondo que subyace en la
acercarnos más al circuito artı́stico internacional, para obra y su relación con factores relacionados con las
llegar a que el arte evolutivo pueda ocupar el puesto tendencias y oportunidades de interés particular en
que merece. cada momento histórico.

514
XIII Congreso Español en Metaheurı́sticas y Algoritmos Evolutivos y Bioinspirados

IV-B. Sobre los artistas. Este tipo de competiciones, permiten avanzar en


alguno de los puntos controvertidos destacados en la
En los ejemplos más conocidos de arte evolutivo, sección previa: el establecimiento de un jurado y una
tal como el que pueda producirse con herramientas competición permite que sea un grupo especializado
similares a Picbreeder, mediante un proceso que el que dictamine. En esta lı́nea, podemos referirnos a
podrı́amos llamar crowd-painting, se invita a usuarios alguno de nuestros trabajos previos en este dominio,
particulares, distribuidos a través de internet, para que como XY que fue enviado a la competición en el
de modo colectivo evolucionen imágenes. ¿Es éste año 2013 y resultó ganador (ver figura 1) [7]. Hay
el procedimiento adecuado para generar un producto que destacar que aunque el trabajo se apartaba del
artı́stico de calidad? Creemos que no. Si queremos modelo interactivo tradicional de algoritmo evolutivo,
que el producto final sea de calidad, es necesario y en su lugar utilizaba la propuesta coocida como
incluir en el algoritmo los elementos necesarios - Algoritmo Evolutivo Desconectado [17], el resultado
aunque puede que no suficientes- para conseguirlo. fue favorablemente evaluado por el jurado.
En nuestra opinión, esto requiere la presencia de artis-
tas humanos, de modo que sean artistas experimenta-
dos los que puedan hacer la evaluación estética de los
resultados parciales, y que de este modo el algoritmo
pueda progresar, dado que hasta el momento no se
ha encontrado la forma de evaluar automáticamente
la calidad estética. No basta incluir usuarios en la
interacción, deben ser usuarios especiales, artistas,
los encargados de la evaluación de la calidad en
el proceso evolutivo. Sólo cuando en el futuro los
procesos de aprendizaje máquina consigan modelar Figura 1. XY: ACM Gecco 2013 Evolutionary Art, Design
and Creativity competition winner. Four out of the sixty works
a los artistas adecuadamente, podrán ser sustituidos, produced are displayed.
pero mientras tanto los artistas deben estar en el
centro del proceso de evaluación. No obstante, la competición se desarrolla en un
En algunas de nuestras experiencias recientes, op- congreso especı́fico de algoritmos evolutivos, ACM
tamos por esta lı́nea de trabajo [16]. No obstante, GECCO 2013 en este caso, y el jurado está com-
aunque creemos necesaria la presencia de artistas puesto por investigadores del área, algunos de ellos
en el algoritmo evolutivo, esto no tiene porqué ser siendo también artistas. Pero por lo anterior, tanto el
suficiente. Para certificar la calidad de un trabajo, ámbito de la competición como el tipo de jueces, hace
debe haber una evaluación final que permita discernir que exista una ”desviación o tendencia”que favorece
sobre la calidad del algoritmo ejecutado, del mismo el tipo de trabajos presentados.
modo que después de la ejecución de un algoritmo Entendemos que es necesario dar un paso más
evolutivo estándar, se evalúa la calidad final para para conseguir posicionar el arte evolutivo dónde le
saber si la solución obtenida es factible o, en caso corresponde.
contrario, ejecutar de nuevo el algoritmo para intentar IV-C. Sobre los jurados.
de nuevo obtener una solución válida. La composición del jurado es crucial para calificar
En el mundo del arte tradicional, son las compe- la calidad de un trabajo. En el mundo del arte,
ticiones, museos y galerı́as quienes aplican el filtro los curadores (comisarios, - curator en inglés) de
final, además, por supuesto, del público que es quién las exposiciones son los que deciden los artistas
visita las exposiciones y, finalmente, adquiere las cuyo trabajo merecen la pena. Por otro lado, en las
obras. competiciones artı́sticas, las selección de un jurado
En el dominio de los algoritmos evolutivos, al- adecuado es lo que otorga calidad a la misma. Tanto
gunos congresos de relevancia, han organizado en competiciones como exposiciones se llevan a cabo
ocasiones competiciones internacionales. Cabe des- en museos y galerı́as, que actuando como crı́tica
tacar el Gecco Evolutionary Art, Design and Creati- permiten filtrar y definir en cada momento histórico
vity competition [7], que ha permitido a los artistas lo que merece la pena del panorama artı́stico.
evolutivos enviar sus trabajos para que un jurado Por todo lo dicho anteriormente, entendemos que la
internacional eligiera el ganador de la competición. forma más adecuada de evaluación del arte evolutivo,

515
XVIII Conferencia de la Asociación Española para la Inteligencia Artificial

es que compita con el arte humano en igualdad de Este mismo problema, que se ha repetido con las
condiciones en el contexto concreto del arte tradicio- obras posteriores, está ya siendo objeto de mejora.
nal: competiciones de arte, galerı́as y museos. Recientemente hemos trabajado en un modelo de
Describimos a continuación la experiencia obtenida exposición interactiva, que permite analizar al usuario
con las obras que hemos desarrollado en los últimos en la visita, mediante dispositivos Kinnect. Los resul-
cinco años, y que nos ha permitido afrontar el proceso tados muestran que los datos obtenidos son similares
de selección de calidad descrito anteriormente, en un a los obtenidos mediante encuesta, con la ventaja de
recorrido por ciudades y galerı́as de todo el mundo. ser métodos no intrusivos [3]. No obstante, lo que más
En las experiencias que describimos, se incluyen importa en la propuesta que hacemos, es el modo de
tanto galerı́as de arte, como otras competiciones evaluación por los actores fundamentales del mundo
internacionales alejadas del cı́rculo de los algoritmos del arte.
evolutivos. En una segunda etapa, y considerando que el lugar
natural para un artista y su obra es una galerı́a de arte,
V. E XPERIMENTOS Y R ESULTADOS decidimos apostar por este ámbito expositivo. Ası́, en
2015 y 2017, organizamos exposiciones temporales
Desde el año 2012, utilizando el Algoritmo Evo- de la obra XYZ en la Galerı́a de Arte ”Back Ballery
lutivo Desconectado -que avanza en la dirección Project”, en Vancouver. Conseguimos gestionar la
del algoritmo evolutivo interactivo, permitiendo al exposición e inauguración del evento en la galerı́a
usuario ejecutar todos y cada uno de los pasos del la misma semana que tuvo lugar el congreso IEEE
algoritmo evolutivo [16]- hemos ido recorriendo una CEC en la ciudad. En el congreso se mostraron
serie de etapas que nos han permitido mejorar los algunas reproducciones de la obra, y se redirigió a los
procesos de evaluación de los resultados artı́sticos, asistentes a la galerı́a para la visita. Hay que enfatizar
avanzando en el camino que creemos es más ade- el hecho de que no habı́a ninguna conexión previa
cuado para posicionar el Arte Evolutivo en el mundo entre la galerı́a de arte, dedicada exclusivamente al
del arte plástico, llegando a obtener algunos de los mundo del arte, y el congreso mencionado.
objetivos perseguidos y, como se verá más adelante, De forma parecida, se gestionó otra exposición
tan sólo pendiente de la decisión sobre la ubicación en la Gallerie Louchard de Parı́s, en Octubre de
definitiva de las obras generadas, ya sea en alguna 2017, aunque en este caso, la galerı́a si ofrecı́a a los
colección particular o en algún museo de arte con- organizadores del congreso Artificial Evolution 2017
temporaneo. Tal como se describe anteriormente en un espacio en el que mostrar arte evolutivo enviado
la metodologı́a, hemos tratado de afrontar procesos al congreso.
de evaluación de calidad cada vez más cerca del Lo anterior muestra que las galerı́as de arte pueden
mundo del arte, y más lejos del área de los algoritmos estar interesadas en el arte evolutivo igual que en
evolutivos. cualquier otro tipo de arte contemporáneo, y que la
aceptación de la obra para ser expuesta por parte
V-A. Galerı́as de Arte y su público de galerı́as de arte, como en los ejemplos descritos
Han sido tres las obras colectivas de arte evolutivo anteriormente, son un indicativo, y por tanto un modo
que hemos producido en estos últimos cinco años: de evaluación, de la calidad de las obras.
XY, XYZ y finalmente The horizon project [5]. Desde V-B. Evaluación definitiva: Competición Interna-
el principio se consideró la necesidad de exponer cional de Arte
las obras y obtener realimentación de la opinión del
público. No obstante, y tal como indicábamos en secciones
En cuanto a la primera obra, XY, se decidió previas, la mejor manera de evaluar un trabajo artı́sti-
mostrarla en congresos del área. Las exposiciones en co, independientemente del procedimiento con que se
Cancún, Madrid y Mérida, en congresos como IEEE ha generado, es presentarlo en alguna competición
CEC o MAEB, permitieron obtener información de puramente artı́stica, a nivel internacional. Esto es
público afı́n, y detectamos los problemas asociados lo que se hizo con la tercera obra, The Horizon
con la utilización de encuestas a los usuarios, que Project [5] (ver figura 2). Se decidió presentarlo a la
implican un cansancio similar al de los usuarios que competición Show Your World 2017 1 , celebrada en
participan de modo interactivo con los algoritmos 1 http://www.reartiste.com/juried-exhibition-show-your-world-
evolutivos. 2017/

516
XIII Congreso Español en Metaheurı́sticas y Algoritmos Evolutivos y Bioinspirados

New York, y cuyas obras finalistas serı́an expuestas AGRADECIMIENTOS


en la galerı́a Gallery MC, en Manhattan. La obra fue Agradecemos el apoyo del Ministerio de Eco-
seleccionada por un jurado internacional como obra nomı́a y Competitividad proyecto TIN2017-85727-
finalista, siendo la única obra Española finalista en C4-{2,4}-P, Junta de Extremadura, Consejerı́a de
esta competición, y por supuesto la única generada Comercio y Economı́a, proyecto IB16035 a través del
mediante procesos evolutivos. Fondo Europeo de Desarrollo Regional, “Una manera
Hasta dónde sabemos, esta es la primera vez de hacer Europa”.
que una obra de estas caracterı́sticas es evaluada -
y seleccionada como finalista- en una competición R EFERENCIAS
internacional abierta en el ámbito del mundo del [1] Boden, M.A.: The turing test and artistic creativity. Kyber-
netes 39(3), 409–413 (2010)
arte, con un jurado especialista, y expuesto en una [2] Botstein, L.: Schoenberg and the audience: modernism, mu-
exposición dirigida por un curador profesional. sic, and politics in the twentieth century. Schoenberg and his
World pp. 19–54 (1999)
[3] Fernández, F., Garcı́a, M., Merelo, J., Aguilar, G., Cruz, C.,
Hernández, P.: Analyzing evolutionary art audience interac-
tion by means of a kinect based non-intrusive method. In:
Studies in Computational Intelligence series, vol. 785, pp.
321–347 (2018)
[4] Frade, M., Fernández de Vega, F., Cotta, C.: Evolution of
artificial terrains for video games based on accessibility. In:
European Conference on the Applications of Evolutionary
Computation, pp. 90–99. Springer (2010)
[5] Hernández, P., Fernández de Vega, F., Cruz, C., Albarrán, V.,
Garcı́a, M., Navarro, L., Gallego, T., Garcı́a, I.: The horizon
project: Emotion in lines. Journal Art and Science 1(1), 1–9
(2017)
[6] House, J.: Impressionism: Paint and Politics. Yale University
Press (2004)
[7] Loiacono, D.: Gecco-2013 competitions. ACM SIGEVOlu-
Figura 2. The Horizon Project, available at: tion 6(2), 27–28 (2014)
http://merida.herokuapp.com/ [8] McCormack, J.: Open problems in evolutionary music and
art. In: Workshops on Applications of Evolutionary Compu-
tation, pp. 428–436. Springer (2005)
En resumen, aunque en los problemas de optimi- [9] Peress, M.: Dvorak to Duke Ellington: A Conductor Explores
zación la calidad del resultado es fácil de evaluar America’s Music and Its African American Roots. Oxford
considerando si el resultado obtenido da solución al University Press on Demand (2004)
[10] Reichardt, J.: Cybernetic serendipity: the computer and the
problema planteado, creemos que el camino mostrado arts. Praeger (1969)
para evaluar el arte evolutivo en este trabajo, que in- [11] Romero, J.J.: The art of artificial evolution: A handbook on
cluye al público y la crı́tica, representada por galerı́as evolutionary art and music. Springer Science & Business
Media (2008)
de arte y competiciones internacionales, es el único [12] Secretan, J., Beato, N., D Ambrosio, D.B., Rodriguez, A.,
que puede otorgar un sello de calidad a un resultado Campbell, A., Stanley, K.O.: Picbreeder: evolving pictures
artı́stico. collaboratively online. In: Proceedings of the SIGCHI
Conference on Human Factors in Computing Systems, pp.
1759–1768. ACM (2008)
VI. C ONCLUSIONES [13] Takagi, H.: Interactive evolutionary computation: Fusion of
the capabilities of ec optimization and human evaluation.
Este artı́culo presenta nuestra posición sobre lo Proceedings of the IEEE 89(9), 1275–1296 (2001)
[14] Thompson, D.: The $12 million stuffed shark: The curious
que consideramos más adecuado para la correcta economics of contemporary art. Macmillan (2010)
evaluación de un proyecto de arte evolutivo. [15] Fernández de Vega, F.: Revisiting the 4-part harmonization
Nuestra propuesta, que renuncia al test de turing problem with gas: A critical review and proposals for im-
proving. In: Evolutionary Computation (CEC), 2017 IEEE
por su incapacidad para otorgar un sello de calidad Congress on, pp. 1271–1278. IEEE (2017)
a un trabajo, se basa en involucrar a actores funda- [16] Fernández de Vega, F., Cruz, C., Navarro, L., Hernández, P.,
mentales del mundo del arte: la crı́tica y al público. Gallego, T., Espada, L.: Unplugging evolutionary algorithms:
an experiment on human-algorithmic creativity. Genetic Pro-
El artı́culo muestra como ejemplo el recorrido de gramming and Evolvable Machines 15(4), 379–402 (2014)
un proyecto artı́stico colectivo que comenzó en 2012, [17] Fernández de Vega, F., Navarro, L., Cruz, C., Chavez, F.,
y su proyección en los diferentes foros artı́sticos, ha Espada, L., Hernandez, P., Gallego, T.: Unplugging evolutio-
nary algorithms: on the sources of novelty and creativity. In:
permitido dotar de sentido diferenciado a la obra, más Evolutionary Computation (CEC), 2013 IEEE Congress on,
allá de la distición por ser arte evolutivo. pp. 2856–2863. IEEE (2013)

517
1
XVIII Conferencia de la Asociación Española para la Inteligencia Artificial

An Evolutionary Approach to Metroidvania


Videogame Design
Álvaro Gutiérrez Rodrı́guez, Carlos Cotta, Antonio J. Fernández Leiva
ETSI Informática, Campus de Teatinos, Universidad de Malaga, 29071 Málaga – Spain
Email:{alvarogr,ccottap,afdez}@lcc.uma.es

Abstract—Game design is a fundamental and critical part directed to propose a tool aimed to create a complete game
of the videogame development process, demanding a high cost (leaving art and sound aside) for any genre, creating the
in terms of time and effort from the team of designers. The mechanics, game rules, game elements, NPC behaviors and
availability of tools for assisting in this task is therefore of
the foremost interest. These can not just speed up the process levels. For this, we propose the use of bioinspired algorithms
and reduce costs, but also improve the overall quality of the for learning and optimization. More precisely, we pose the use
results by providing useful suggestions and hints. A conceptual of evolutionary algorithms to generate game contents (game
system to approach the construction of this kind of tools is rules, mechanics, etc.) and machine learning tools such as
presented in this work. By using a learning component, the artificial neural networks to mimic the way the designer thinks.
preferences and expertise of the designers can be modelled and to
some extent simulated. This model is subsequently exploited by After briefly outlining others related works in Section II, this
an optimization component that tries to create adequate game system is described for a general point of view in Section
designs. A proof of concept of the system is provided in the III. As an initial proof of concept, we have picked the case
context of level design in Metroidvania games. It is shown that of Metroidvania games [7]. The deployment of the system on
the system can produce quality solutions and hints to the designer. this context is then detailed in Section IV, and the results of
an empirical examination are provided in Section V. We close
this work with a summary of findings and an outline of future
I. I NTRODUCTION work in Section VI.
The development of a videogame encompasses different
stages/phases and usually involves teams specialized on partic- II. BACKGROUND
ular areas. Among all these phases, the design phase is crucial AI-assisted game design refers to the development of AI-
for the ultimate fate of the game: it is in this stage where it powered tools supporting the game design and development
is decided how the game will be, what the requirements for process [6]. Combining these tools with Procedural Content
subsequent development phases will be, and most importantly, Generation techniques (PCG) is a good approach to aid the
which the source of fun in the game will be. game designer.
Unlike other development stages, design is not so commonly Liapis et al. [4], [8] generate new designs using genetic
assisted by AI tools. This contrasts with the pervasive use algorithms (GAs) as a PCG technique. Designers have a map
of such tools in content generation. For example, Non-Player design on which they are working, and the application derives
Characters (NPCs) are agents controlled by the computer new designs using this former as a seed. The GA uses different
whose behaviour must be believable (i.e., in accordance with criteria to evolve solutions, such as game pace and player
the rol of that character) to keep the player’s inmersion in the balance (see also [9]). The playability of the design is defined
game. Developers also use procedural generation techniques by considering if all resources and bases are reachable from
to generate new content (e.g., maps1 , weapons2 , stories3 , etc.) any other base or resource. The application shows twelve
during gameplay in order to diminish monotony. The use of derivations, six made with the evolution system commented
content generation tools reduces the workload of designers and and other six with novelty search. An important part of the
artists, and produce results that are generally well-received by experiments involved having professional designers use the
the end users. tool. The feedback was positive, indicating the system was
As anticipated before, the field of intelligent tools for capable of providing interesting suggestions.
game design is still nascent, but it does not mean that it ANGELINA is a cooperative coevolutionary system for
has not yet been explored [1]–[6]. Indeed, previous works automating the process of videogame design. There have been
provide interesting and explanatory results, paving the way several different versions of ANGELINA in the past [10]–[12].
for further developments. While some of them focus on Focusing on the last version [5], it can create every content
specific videogame genres and in stablished mechanics, a of a game: mechanics, game rules, programming, sound, art
broader perspective is possible. In this sense, this work is and levels. The creation of a game starts with a semantic
1 http://spelunkyworld.com/index.html derivation of a sentence or word; after this derivation, free
2 https://borderlandsthegame.com/ contents (e.g., models, textures, sounds, etc) in agreement with
3 https://www.shadowofwar.com/es/ the derivation are searched in the web. Later, mechanics, game

518
2
XIII Congreso Español en Metaheurı́sticas y Algoritmos Evolutivos y Bioinspirados

rules and, finally, levels in agreement with those mechanics


and game rules are created. During the process, a game is
represented as a map which defines passable and non-passable
areas in a two-dimensional grid, a layout which describes the
arrangement of player and non-player characters in the map,
and a ruleset which describes the effects of collisions between
game entities, as well as movement types for the NPCs, and
time and score limits for the game [12]. A collection of EAs
run concurrently, each of them aimed to optimize a different
component; in order to have a complete vision and optimize
their individual objectives, they share information on the game
(board state, rules, mechanics) during the evolutionary process
and use the fitness of individual components to increase the Figure 1: System scheme
overall fitness of the finished artifact4 .

During the process, the designer can interact with the system
III. A N AUTOMATED S YSTEM FOR G AME D ESIGN
by providing additional examples or clues to refine the model
The design process is difficult due to the different abstract and hence bias the search process in specific directions.
facets it encompasses. Consider for example the design process In line with the work by Sorenson and Pasquier [13], in
of a character: the designer receives the story of the character which the fitness function calculate the feasibility and fun of
and some features of their personality (e.g., heroic, brave, etc.); the design, we aim to customize this function to each designer.
then, the designer creates several different designs, all of which To this end, the learning component needs to learn to think like
can be functional, well drawn, and using an appropriate color the designer and will validate the different individuals (ideas)
palette. But which of them is the best design? The designer of the EA like the designer would. A system such as this one
could arrange all different designs in a screenshot of the movie can be used to create a complete game of any genre. As an
or videogame to see which one fits better but how is this initial step, in this work we have focused on Metroidvania
decision taken? Designers need to use their experience and games, whose complexity is more amenable for a study under
creativity to choose the fittest design. controlled conditions. This is detailed in next section.
If we now think about level design in a Metroidvania
videogame, the main issue is the same: designers knows what
kind of experience they want to create with certain mechanics, IV. A C ASE S TUDY: M ETROIDVANIA G AME D ESIGN
game rules and level elements specified but, what is the best When a game designer starts the design of a new game, one
combination and order of all the elements? Some designs of the starting points is selecting the genre of the game. Each
could be created, tested and then the most convincing design genre has several predefined mechanics that define it. When
(according to the designer’s creative mind and subjective the designer select the genre, new mechanics are created and
opinion) could be refined. mixed. In our case, we focus on the Metroidvania genre [14]
The examples above tackle different elements of a game due to its diversity of mechanics. This genre is famous for
but they are solved in the same way: through the designer’s mixing the Metroid and Castlevania games series. Games in
expertise. In both cases the different designs are evaluated by this genre feature a large interconnected map through which
the mind of the designer, so we need to recreate this cognitive the player can move, having to obtain objects, weapons or
process. To this end, we propose a framework that orchestrates abilities to unlock the different locked areas. The map is
the use of bioinspired algorithms for learning and optimization composed of different areas, each of which is in turn composed
– see Fig. 1. A typical configuration would involve the of different rooms (including secret rooms). Rooms are where
use of artificial neural networks (ANNs) for learning and the different enemies, objects, new abilities, are placed.
evolutionary algorithms (EAs) for optimization. Typically, a Metroidvania game is a side-scrolling platform
Within this framework, EAs will be used to recreate the game whose creation can be accomplished by adequately
different ideas that a designer can have during the design defining the following elements [7]:
process. This is done by trying to optimize an objective
• Mechanics: all actions that the player or character can
function that mimics the designer’s goals and preferences.
do, changing the state of the game as a consequence.
This function is provided by the learning component of
• Game rules: these indicate the results of an action,
the framework. This component is initially seeded with a
i.e., how an action has modified the state of the game.
collection of learning cases, namely examples that can be
Rules are composed by a set of previous states of
either positive (goals, appealing features of solutions, etc.) or
game elements, a set of actions and a set of new
negative (undesirable features of solutions, traps to be avoided,
states (not necessarily the states of the elements in-
etc.). Using these, a first model of the designer is built and
volved in the action). For example: stateOf(boxA) +
used by the EA to generate potentially admissible solutions.
action(moveBoxAToPositionX) = stateOf(doorA, open).
4 Two games produced by this system were presented in the Ludumdare 28 • Level elements: all objects included in a certain level
GameJam – http://ldjam.com/ . (phase, stage, or screen) of the game. We distinguish

519
3
XVIII Conferencia de la Asociación Española para la Inteligencia Artificial

(a) (b) (c) (d)

Figure 2: (a) Space partition (b) Main path of the level (c) Joining the main path and the secondary one (d) Complete design
of the level.

between two types: interactive and non-interactive. Inter- Input Hidden Ouput
active elements are those whose state can be changed by layer layer layer
an action. Conversely, non-interactive elements are those I1
whose state is not affected by player’s actions. H1
• Objects: every game object that the player collect, chang-
ing the player’s state as a result. Such a modification will I2
be defined by the game rules, and can be a new ability
or updated stats, just to give two examples. I3
.. O1

• Characters: these are agents controlled by the computer


whose goals are defined by the game rules and whose .. . O2

behaviors are defined by game mechanics.


• Levels: This is the scenario in which players use their
mechanics and the different enemies, objects and level Ik|B|
.
Hn
elements created for the game are placed. The game can
have one or several levels but the goal in all of them is
defined by the game rules. Figure 3: ANN structure used to evaluate motifs
We are specifically going to focus on the generation of
levels. To do so, for each level to be created we pick a width
and height, and generate an empty space of these dimensions, respectively. This is the initial input to the system, and will be
discretized into cells whose size doubles the player’s size. used the get the ball rolling in the automated design process.
Each cell is a possible point of the path to complete the level. In order to model the designer’s preferences, the next step is
Once we have this grid of cells, the designer (or the automated extracting the necessary information from the reference sets.
system) creates the path and the optimization algorithm finds For this purpose, the solutions (i.e., game designs) contained in
a combination of mechanics to use in the so-defined path. The these are scanned in order to identify particular motifs, which
cells that are not part of the path are merely “atrezzo” of the are subsequently classified as good or bad, depending on their
level (e.g., solid walls, pipings, skeletons, etc.). See Fig. 2 for presence in good/bad solutions. Notice that this can lead to
an example of a level created by the system. contradictory inputs to the classifier, since a given motif can
The path was calculated by choosing two random points appear in both good or bad solutions. The particular learning
on the left and right sides of the grid and connecting them. algorithm used must therefore be able to discern whether the
Subsequently, a secondary path is created using the same pro- motif is really a significant indicator of goodness/badness or
cedure, picking two randoms points in the grid at Manhattan it is simply an irrelevant piece of information.
distance > 2 of the main path. In the particular context we are considering in this work,
solutions are the description of the main path of the level
A. Learning process (the same process can of course be applied to the secondary
As stated in the previous section, the learning component is path). We assume we have a collection B of possible building
responsible of modelling and simulating the cognitive process blocks for this path, each of them representing the contents of a
of the designer regarding how good a particular level design is. certain grid cell (i.e., a corridor, a staircase, a moving platform,
In this work, we have opted for using a neural network for this etc.). The whole path is therefore a sequence of blocks. Let
purpose, although arguably other machine learning methods m be the length of this sequence. In order to extract motifs,
could be used as well. The role of this component is to serve as we have opted for a very simple strategy which amounts to
a judge capable of assessing the creations of the optimization identifying contiguous subsequences of a certain length k.
component in the same way that the designer would do. To Thus, if we have a solution [b1 , b2 , . . . , bm ], we can extract
this end, we need a reference set composed of good and m − k + 1 motifs from it: hb1 , . . . , bk i, hb2 , . . . , bk+1 i, up to
bad solutions, as dictated by the preferences/knowledge of the hbm−k+1 , . . . , bm i. This is repeated for each solution in either
designer. We shall use in the following the notation Refgood reference set, and each motif is assigned a label good/bad
and Refbad to refer to the collection of good and bad solutions depending on its provenance.

520
4
XIII Congreso Español en Metaheurı́sticas y Algoritmos Evolutivos y Bioinspirados

Once the set of motifs is available, it is fed to an artificial which could be in turn refined online by tagging particular
neural network such as the one depicted in Fig. 3. The input solutions as good or bad and retraining the ANN.
level has k|B| neurons, meaning that each motif is encoded
as the concatenation of k bitstrings, each of them representing V. E XPERIMENTS AND R ESULTS
a block in the motif. To be precise, each of these bitstrings The system described in the previous sections has been put
has as many bits as block types are, and only one bit is set to to test in order to obtain a proof of concept of its functioning.
1 (the bit corresponding to the block in the corresponding The results obtained will be described later on in this section.
position of the motif). As to the output level, it has two Previously, let us detail the configuration of the experiments.
neurons, corresponding to each of two classes considered
(good/bad). After training the ANN, any given motif can
A. Experimental setting
be assessed numerically with a value ranging from −1 to
1 by subtracting the output (which is between 0 and 1) of The game design task considered in this work consists
these two output neurons. We use this procedure in order of constructing the level of a Metroidvania game using a
to handle contradictory information, which can be present as collection B of 7 different blocks. The length of the main
stated before. path is in this case m = 50, thus resulting in a search space
whose size |B|m > 1042 makes a brute force exploration be
out of question. The motifs considered are substrings of length
B. Optimization process k = 3. Hence, the ANN utilized in the learning phase has an
The optimization process has the role of generating tenta- input layer of k|B| = 21 neurons. We have chosen n = 63
tive solutions. As stated before, each solutions indicates the neurons in the intermediate layer (that is, thrice the size of
different mechanics to be used in the main path of the level. the input layer), and have 2 output neurons as described in
We represent them with an integer array of length m. Each Section IV-A. All neurons have a sigmoid activation function,
position in the array represents a cell in the main path, and and the ANN is trained using backpropagation (learning rate
each integer value 0, . . . , |B| − 1 indicates a certain type of δ = 0.2, momentum α = 0.33; run until the error is less than
block. In order to evaluate a given solution, it is scanned and 0.1 or a maximum of 100,000 learning epochs is reached).
the motifs it contains are extracted, much like it was described As to the GA utilized in the optimization component has a
in the previous subsection. Given that we are considering population size of µ = 50 individuals, crossover probability
substrings of length k as motifs, it is convenient to define pc = 0.9, mutation probability pm = 1/m = 0.05, and is run
a function for maxevals= 5000 evaluations (we created different sets of
k
M(k) : B m → N|B| (1) parameters, tested them with the same training set and those
mentioned before obtained the best results).
that computes how many times each motif appears in a certain We have considered three test cases to evaluate the behavior
solution (note that each solution contains m − k + 1 motifs, of the system. Each of these test cases is constructed by
some of them possibly repeated, among |B|k different potential creating an initial payoff table for each of the motifs. Once
motifs). adequate reference sets Refbad and Refgood are defined (by
Now, we resort to the assessment of the ANN in order to providing solutions that aim to maximize or minimize the
evaluate a particular collection of motifs. More precisely, let S resulting sum of payoffs according to the initial table), the
be a solution (a length-m sequence of blocks). Then, M(k) (S) whole system tries to (i) discover the usefulness of each
would be an array with the frequency of each motif in S. We motif (which is quantitatively unknown to the system, and
will use the notation M(k) (S)i1 ...ik to refer to the element can only be inferred via the appearance of these motifs in
in this frequency array corresponding to motif hi1 . . . ik i, i.e., good or bad solutions) and (ii) construct good solutions by
the count number of this specific motif in this solution S. The combining appropriately these motifs (not straightforward in
quality value f (S) of this solution would be then: general, given the fact that all motifs in a solution are in partial
X overlap with each other).
f (S) = TiANN
1 ...ik
M(k) (S)i1 ...ik (2)
The first test case is given by a payoff matrix
i1 ...ik ∈{1,...,|B|} (
1 (x = y) ∨ (x = z) ∨ (y = z)
where TiANN
1 ...ik
is the assessment provided by the ANN for that Txyz = (3)
specific motif hi1 . . . ik i. Thus, the objective function would −1 otherwise
compute the sum of the value attributed by the ANN to each i.e., motifs with 3 different elements are undesirable, whereas
motif (which ranges from 1 for very desirable motifs down motifs with 2 or 3 identical elements are good. This is
to −1 for highly undesirable solutions, with all the range of an easy test case that can nevertheless provide interesting
intermediate values for motifs of more or less uncertain desir- information in terms of the bias of the optimizer towards
ability) present in the solution, weighted by the corresponding particular directions. The second test case is actually a variant
frequency of the motif. of the previous one, and is given by the following payoff table:
The search engine used is an elitist genetic algorithm (GA) 
with binary tournament selection, uniform crossover and ran- 0 x = y = z

dom mutation. The objective of the search would be providing Txyz = 1 x 6= y 6= z (4)

designers different suggestions that mimic their preferences, 
3 otherwise

521
5
XVIII Conferencia de la Asociación Española para la Inteligencia Artificial

Refgood Refbad Evolved Refgood Refbad Refgood Refbad Evolved


Evolved
20 20 20 20 20 20 20 20 20

18 18 18 18 18 18 18 18 18

16 16 16 16 16 16 16 16 16

14 14 14 14 14 14 14 14 14

12 12 12 12 12 12 12 12 12
frequency

frequency
frequency
10 10 10 10 10 10 10 10 10

8 8 8 8 8 8 8 8 8

6 6 6 6 6 6 6 6 6

4 4 4 4 4 4 4 4 4

2 2 2 2 2 2 2 2 2

0 0 0 0 0 0 0 0 0
-40 -20 0 20 40 -40 -20 0 20 40 -40 -20 0 20 40 0 50 100 150 0 50 100 150 0 50 100 150 -20 0 20 40 -20 0 20 40 -20 0 20 40
quality quality quality quality quality quality quality quality quality

(a) (b) (c)

Figure 4: Histogram of objective values according to the underlying payoff table for reference solutions (Refgood and Refbad )
and solutions evolved by the system. (a) Test case #1 (b) Test case #2 (c) Test case #3

In this case, motifs with 3 identical elements are highly Table I: Structural difference between solutions in the test case
undesirable. motifs with 3 different elements are better, yet #1. The number of motifs of each type (based on the number
suboptimal; the best motifs are those with exactly 2 identical b of identical blocks in it) is shown for each data set
elements. Finally, the third test case is defined via random b=2 b=3 b=0
payoffs: Txyz is uniformly drawn at random from the interval Refgood 897 63 0
Refbad 0 0 960
[−1, 1] for each particular motif hx, y, zi. Evolved 533 414 13
In the first two test cases, perfect reference sets are con-
structed by picking at random solutions only comprising good
or bad motifs (in the second test case, suboptimal motifs are good according to the hidden criterion used for defining
just included in bad solutions). In the third case, we have goodness/badness.
resorted to an GA analogous to that used in the optimization Some further insight is obtained if we take a look at the
component aiming to maximize/minimize the objective func- structure of evolved solutions and try to compare these with so-
tion defined by the corresponding payoff table. In all cases, lutions in either reference set. To this end, we compute for each
both Refbad and Refgood comprise 20 solutions each. solution S the associated motif-frequency array M(k) (S).
For each test case, the ANN has been trained using the Subsequently, we can compute the structural distance D(S, S ′ )
motifs extracted from the reference sets and the GA has between two solutions S and S ′ as the Euclidean distance
been run 20 times, keeping the best solution found in each between the corresponding motif-frequency arrays, i.e.,
run. All algorithms have been implemented on the videogame sX

2
engine Unity using C# as programming language. The AForge D(S, S ) = M(k) (S)i1 ...ik − M(k) (S ′ )i1 ...ik (5)
library5 has been used to support the ANN. i1 ...ik

Once this is done for each pair of solutions, the resulting


B. Results distance matrix can be used to perform a hierarchical cluster
A first glimpse of the experimental results obtained is analysis. We have done this on the solutions available for each
provided in Fig. 4. Therein, the objective values of both test case, using Ward’s minimum variance method to guide the
reference solutions and evolved solutions is shown for each agglomerative clustering process [15]. As can be seen in Fig.
test case. As indicated in previous subsection, the reference 5, in both test cases #2 and #3, evolved solutions have some
solutions for the first two test cases are perfect, in the sense affinity among them but tend nevertheless to mix with clusters
they only contain desirable or undesirable motifs. Thus, the of solutions in Refgood . Together with the good objective
mass of objective values is concentrated on the left end of quality of these solutions discussed before, this indicates that
the histogram for bad solutions and on the right end for the system did faithfully capture the features of interest in
good solutions. The reference solutions for the third test case solutions and could combine them appropriately. Test case #1
were empirically obtained and hence there is more variety of is also interesting: evolved solutions are objectively good, but
objective values (note that this may to some extent constitute they tend to cluster together, mostly apart from solutions in
a more realistic setting, in which solutions provided by the either reference set. If we perform a quick structural analysis,
designer are not ideal flawless prototypes but can rather have we obtain the results shown in Table I. Note that a few
an inherently noisy structure). In either case, notice how the bad motifs (composed of three different blocks; b = 0)
solutions provided by the EA also tend to cluster towards the have slipped into these solutions, although this is not very
right end of the histogram, indicating that they are objectively significant. It is far more interesting to note that evolved
solutions tend to have much more motifs composed of identical
5 http://www.aforgenet.com/ blocks. This may be an artifact of the learning process, that

522
6
XIII Congreso Español en Metaheurı́sticas y Algoritmos Evolutivos y Bioinspirados

* * * * * * * * * * * * * * * * * *o* * . . . . . . . . . . . . . . . . . . . . ooooooooooooooooooo . . . . . . . . . . . . . . . . . * * * *o* * * * *o* * *ooo*oo* *ooo*ooooo* * * *ooooo . . . * * * * * * * * * *oooooo* * * * *oo* * * * *oooooooooooo . . . . . . . . . . . . . . . . . . . .

(a) (b) (c)

Figure 5: Clustering of solutions in the reference sets and evolved by the system. A dot (’.’) represents solutions in Refbad , a
star (’*’) solutions in Refgood , and a circle (’o’) evolved solutions. (a) Test case #1 (b) Test case #2 (c) Test case #3

might marginally favor some particular motif, or a byproduct [3] A. Liapis, G. N. Yannakakis, and J. Togelius, “Designer modeling for
of the search dynamics of the EA, whereby it may be easier personalized game content creation tools,” in The 9th AAAI Conference
on Artificial Intelligence and Interactive Digital Entertainment. Boston,
for it to create good solutions by exploiting this kind of USA: AI Access Foundation, 2013, pp. 11–16.
motifs. Of course, at this point the loop could be closed by [4] ——, “Sentient sketchbook: Computer-aided game level authoring,” in
having the designer inspect these solutions, possibly providing ACM Conference on Foundations of Digital Games, G. N. Yannakakis,
E. Aarseth, K. Jørgensen, and J. C. Lester, Eds. Chania, Crete: Society
complementary preferences in order to support or discard this for the Advancement of the Science of Digital Games, 2013, pp. 213–
kind of solutions. 220.
[5] M. Cook and S. Colton, “Ludus ex machina: Building a 3d game
designer that competes alongside humans,” in International Conference
VI. C ONCLUSIONS AND F UTURE W ORK on Computational Creativity, S. Colton, D. Ventura, N. Lavrač, and
M. Cook, Eds. Ljubljana, Slovenia: computationalcreativity.net, 2014,
We have presented the concept of an AI-assisted videogame pp. 54–62.
design system, aimed to help designers create games by [6] G. N. Yannakakis and J. Togelius, “A panorama of artificial and com-
putational intelligence in games,” IEEE Transactions on Computational
suggesting new ideas based on a model of their preferences Intelligence and AI in Games, vol. 7, no. 4, pp. 317–335, 2015.
and knowledge. To this end, we propose the orchestrated use [7] K. Pearson, “Guide to making metroidvania styled games – part 1,” Plat-
of machine learning techniques and optimization methods, the formerPower, 2017, https://platformerpower.com/post/160130225259/
guide-to-making-metroidvania-styled-games-part-1 [accessed 28-Jun-
former to capture the designers’ expertise, and the latter to 18].
exploit this expertise in a systematic (and hopefully creative) [8] A. Liapis, G. N. Yannakakis, and J. Togelius, “Designer modeling
way. The experimental proof of concept has shown that not for sentient sketchbook,” in 2014 IEEE Conference on Computational
Intelligence and Games. Dortmund, Germany: IEEE, 2014, pp. 1–8.
only quality solutions analogous to those provided as reference [9] R. Lara-Cabrera, C. Cotta, and A. J. Fernández-Leiva, “On balance and
can be generated, but also different non-anticipated biases can dynamism in procedural content generation with self-adaptive evolution-
appear, providing interesting hints to the designer. ary algorithms,” Natural Computing, vol. 13, no. 2, pp. 157–168, Jun
2014.
As future work, we plan to deploy the system on a more [10] M. Cook and S. Colton, “Multi-faceted evolution of simple arcade
realistic environment to test its capabilities. Needless to say, games,” in 2011 IEEE Conference on Computational Intelligence and
closing the loop and having the designer introduce dynamic Games (CIG’11), S. Cho, S. M. Lucas, and P. Hingston, Eds. Seoul,
South Korea: IEEE, 2011, pp. 289–296.
preferences is another improvement of the foremost interest. [11] M. Cook, S. Colton, and A. Pease, “Aesthetic considerations for auto-
mated platformer design,” in AAAI Conference on Artificial Intelligence
and Interactive Digital Entertainment, M. Riedl and G. Sukthankar, Eds.
ACKNOWLEDGMENTS California, USA: The AAAI Press, 2012, pp. 124–129.
This work is supported by Spanish Ministerio de Economı́a, [12] M. Cook, S. Colton, and J. Gow, “Initial results from co-operative co-
evolution for automated platformer design,” in Applications of Evo-
Industria y Competitividad under projects EphemeCH lutionary Computation – EvoApplications 2012, ser. Lecture Notes
(TIN2014-56494-C4-1-P) and DeepBIO (TIN2017-85727-C4- in Computer Science, C. Di Chio et al., Eds., vol. 7248. Berlin,
1-P), and by Universidad de Málaga, Campus de Excelencia Heidelberg: Springer Verlag, 2012, pp. 194–203.
[13] N. Sorenson and P. Pasquier, “Towards a generic framework for au-
Internacional Andalucı́a Tech. tomated video game level creation,” in Applications of Evolutionary
Computation - EvoApplications 2010, ser. Lecture Notes in Computer
Science, C. Di Chio et al., Eds., vol. 6024. Berlin Heidelberg: Springer
R EFERENCES Verlag, 2010, pp. 131–140.
[1] R. Hunicke, M. Leblanc, and R. Zubek, “MDA : A formal approach to [14] C. Nutt, “The undying allure of the metroidvania,” Gamasu-
game design and game research,” in AAAI Workshop on Challenges in tra, 2015, https://www.gamasutra.com/view/news/236410/The undying
Game AI, vol. 4. San Jose: Press, 2004, pp. 1–5. allure of the Metroidvania.php [accessed 29-Jun-18].
[2] N. Sorenson and P. Pasquier, “The evolution of fun: Automatic level de- [15] J. H. Ward Jr., “Hierarchical grouping to optimize an objective function,”
sign through challenge modeling,” in International Conference on Com- Journal of the American Statistical Association, vol. 58, no. 301, pp.
putational Creativity, D. Ventura, A. Pease, R. P. y Pérez, G. Ritchie, 236–244, 1963.
and T. Veale, Eds. Lisbon, Portugal: Department of Informatics
Engineering, University of Coimbra, 2010, pp. 258–267.

523
XIII Congreso Español
de Metaheurísticas,
Algoritmos Evolutivos y
Bioinspirados
(XIII MAEB)
MAEB 2.1: SESIÓN E SPECIAL:
SCATTER SEARCH Y
PATH R ELINKING
Organizadores:
A NNA M ARTÍNEZ-GAVARA Y
JESÚS SANCHEZ-O RO CALVO
XIII Congreso Español en Metaheurı́sticas y Algoritmos Evolutivos y Bioinspirados

GRASP with Path Relinking for the Constrained


Incremental Graph Drawing Problem
A. Martı́nez-Gavara A. Napoletano P. Festa
Dept. Estadı́stica i Inv. Operativa Dept. Mathematics and Applications Dept. Mathematics and Applications
Universitat de València University of Napoli Federico II University of Napoli Federico II
València, España Napoli, Italy Napoli, Italy
gavara@uv.es antonio.napoletano2@unina.it paola.festa@unina.it

T. Pastore R. Martı́
Dept. Mathematics and Applications Dept. Estadśtica i Inv. Operativa
University of Napoli Federico II Universitat de València
Napoli, Italy València, España
tommaso.pastore@unina.it rafael.marti@uv.es

Abstract—Graph Drawing is a well-established area in Com- map of the user over successive drawings. In this way, we
puter Science, with applications from scheduling to software consider a new model adding constraints on both the relative
diagrams. The main quality desired for drawings is readability, ( [7]) and the absolute position of the original vertices ( [1]
and edge crossing minimization is a well-recognized method for
a good representation of them. This work focuses in incremental in the context of orthogonal graphs).
graph drawing problems, with the aim to minimize the number In this work, we propose a new mathematical programing
of edge crossings while satisfying some constraints to preserve the formulation and a GRASP (Greedy Randomized Adaptive
absolute position of the vertices in previous drawings. We propose Search Procedure) with PR (Path Relinking) method. We
a mathematical model and a GRASP (Greedy Randomized Adap-
adapt the well-known Local Solver black-box optimizer
tive Search Procedure) with PR (Path Relinking) methodology to
solve this problem. Finally, we compare our methodology with to solve this problem. Finally, we compare our heuristic
CPLEX and heuristic solutions obtained by a well-known black- with CPLEX and Local Solver, we have verified that
box solver, LocalSolver. GRASP+PR is able to obtain a fraction of the optimal so-
Index Terms—heuristics, graph drawing, path relinking lutions.

I. I NTRODUCTION II. M ATHEMATICAL P ROGRAMING M ODEL


Graph Drawing is a relevant topic of research in areas such
A hierarchical graph H = (G, p, L) is defined as a graph
as workflow visualization, database modeling, bioinfomatics
G = (V, E) where V and E represent the sets of vertices
and decision diagrams. The difficulty lies in getting readable
and edges, respectively, p is the number of layers, and L :
informations from systems represented by graphs. See, for
V → {1, 2, . . . , p} is a function that indicates the layer where
example, Kaufmann and Wagner [4] and Di Battista [1]
a vertex v ∈ V resides. Let V t be the set of vertices in layer
for a throughly survey in graph drawing. The edge-crossing
t, and let E t be the set of edges from V t to V t+1 , with nt =
minimization criterion is one of the most common to obtain a
|V t |.
readable drawing. The problem of minimizing the number of
The problem of minimizing edge-crossing is well-known in
crossings is NP-complete.
graph drawing [1] and, in the context of hierarchical graphs,
In this work we consider hierarchical graphs, this is not a
may be formulated as the problem of finding the optimal
limitation since there exists several methodologies to convert
ordering in each layer. A drawing D of a hierarchical graph
any directed acyclic graph (DAG) into a layered graph. The
H is the pair (H, Π) where Π is the set {π 1 , . . . , π p }, with
Hierarchical Directed Acyclical Graph (HDAG) representation
π t establishing the ordering of the vertices in the layer t. We
is done by setting all the vertices in layers, and all the edges
define as C(D) the total number of edge crossings in drawing
pointing in the same direction. The most well-known method
D.
to obtain a good representation of a graph is the Sugiyama’s
From an original hierarchical graph H = (G, p, L) and its
procedure [9], which has become a standard in the field.
drawing D = (H, Π0 ), we can consider the addition of some
We focus on minimizing the number of edge crossings in
vertices V̂ and edges Ê obtaining an incremental graph IH =
incremental graph drawings. The goal is to preserve the mental
(IV, IE, p, L), where IV = V ∪ V̂ and IE = E ∪ Ê, p is
This work has been partially supported by the Spanish Ministerio de the number of layers and mt is the number of vertices in the
Economı́a y Competitividad with grant ref. TIN2015-65460-C02. incremental graph in layer t.

527
XVIII Conferencia de la Asociación Española para la Inteligencia Artificial

The goal in the Incremental Graph Drawing Problem


(IGDP) is to minimize the number of edge crossings of an
incremental drawing ID = (IH, Π), while conserving the
same relative position between the original vertices as in the
original drawing D. The mathematical programing formulation
of IGDP is based on a linear integer formulation for the Multi-
Layer Drawing Problem proposed by Jünger et al. in [3], with
a new set of constraints that preserves the relative position of
the original vertices. As the authors in [3], we define the binary
variables xtik , where xtik take the value 1 if vertex i precedes
vertex k and 0 otherwise, where i, k are vertices that reside
in the same layer t, t = 1, . . . , p. Let π0t (i) be the original
position of the vertex i. The new constraints are:
Fig. 1. Constructive phase for the C-IGDP.

xtij + xtji =1, ∀ i, j ∈ V t : 1 ≤ i < j ≤ mt (1)


in swapping the positions of two incremental vertices. For a
xtij =1, ∀ i, j ∈ V t : π0t (i) < π0t (j). (2)
incremental vertex v, from the first until the last incremental
Finally, we add the requirement that the positions of the vertex in a layer, our procedure searches the best swap move
original vertices has to be set close enough to their positions in with all the other incremental vertices, and performs it if it
the original drawing. The maximum distance slack between the reduces the number of edge crossings. The algorithm scans all
original position of a vertex and the new one, is represented by the swap moves from layer 1 to p until no further improvement
K. The mathematical model for the Constrained Incremental is possible. Since only incremental vertices are involved, all
Graph Drawing Problem (C-IGDP) consists in the IGDP the moves are feasible. Henceforth, we call this local search
model adding the following set of constraints: phase as Swap.
Then, the local search method resorts to a second phase,
max{1, π0t (i) − K} ≤ π t (i) ≤ min{π0t (i) + K, mt }, ∀ i ∈ V,
called Insertion, based on neighborhood N1 (ID). In a given
(3)
layer, the method scans all incremental vertices (starting from
t t
where π0 (i) and π (i) represent the position of the vertex i, the first one) and explores all its feasible insertions in previous
original and the new one where i can be assigned, respectively. positions (a move is feasible if the position of the original
vertices is within the limits of (3)). As in the case of N0 (ID),
III. G REEDY R ANDOMIZED A DAPTIVE S EARCH
the local search performs sweeps from layer 1 to p until no
P ROCEDURE
improvement is possible.
In this work, we propose a GRASP metaheuristic. The Our improvement procedure ends when Swap and Insertion
method iteratively performs two phases, constructive and im- phases are performed and a local optimum is found.
provement. The first phase employs a greedy function g(v)
that measures the minimum number of edge crossings g(v, q) IV. PATH R ELINKING
when vertex v is inserted in position q in its layer, for all
positions q. In this work, we propose a hybridization of GRASP with
Initially, the construction phase starts with the original draw- forward Path Relinking (PR). PR was originally proposed in
ing, and iteratively, a vertex v is selected from the Restricted the context of Tabu Search [2] to integrate search diversi-
Candidate List (RCL) and it is placed in the position in which fication and intensification. Later, Laguna and Martı́ in [6]
the number of crossings is minimum. The RCL consists of all adapted this technique as an intensification phase for GRASP.
unselected vertices (CL) with the number of edge crossings The method generates intermediate solutions in the path to
lower than or equal to a threshold τ : connect high-quality solutions, which could be better or more
  diverse than the solutions being connected.
τ = min g(v) + α max g(v) − min g(v) . (4) Let IDi and IDg be the initial and guiding incremental
v∈CL v∈CL v∈CL
drawings, respectively. A path relinking move consists of
That is RCL = {v ∈ CL : g(v) ≤ τ }. The performance of replacing an entire layer from the initial solution IDi with
this method depends on the parameter α which balances a layer from IDg . Fig. 2 illustrates the path between two
greediness and randomness. Note that during the construction solutions IDi and IDg with 3 layers and 6 vertices. The three
phase all the original vertices should maintain the restriction first intermediate solutions ID1 , ID2 and ID3 are generated
max{1, π0 (v) − K} and min{π0 (v) + K, mL(v) }. The pseu- from IDi , exchanging one of its layer with the layers of
docode of construction phase is described in Fig. 1. IDg . The process continues from the best solution found, in
Once a solution ID is obtained, we apply our improvement this case solution ID1 with C(ID1 ) = 2, in case of ties
method which consists in two neighborhoods N0 (ID) and the algorithm choose one of the solutions at random. The
N1 (ID). First, the method explores N0 (ID), which consists algorithm finds two solutions, ID4 and ID5 , that are better

528
XIII Congreso Español en Metaheurı́sticas y Algoritmos Evolutivos y Bioinspirados

These preliminary experimentation is devoted to fine tune


the parameters in our GRASP+PR heuristic. First, the value of
the parameter α in the construction phase which controls the
balance between the diversity and the quality of the solution.
We test three different values of α: 0.25, 0.5, and 0.75, and
we also include a variant, labelled as random that, for each
construction, the value of α is selected by random in the range
[0, 1]. The best performance is achieved with this random
variant. The last parameters to be set are the elite set size
Fig. 2. Illustration of PR.
and the distance parameter in the PR procedure. We set these
values to |ES| = 3 and γ = 0.2. The selection of the values of
the parameters in these preliminary experiments is a trade-off
than IDi and IDg , both with number of edge crossings equal between quality and computing time, for this reason, we do
to 1. not reproduce the tables.
The PR explores the path between all pairs of solutions Table I shows the comparison between GRASP and
in a set, called Elite Set (ES), which is constructed with GRASP+PR with CPLEX and LocalSolver over the entire
m = |ES| solutions generated with our procedure, and has set of 609 instances, classified by size. We execute our
the property of being as good as diverse as possible. Initially, heuristics for 100 iterations, LocalSolver is run with a
the ES contains the m first solutions obtained with our time limit of 20 seconds on the instances with 2 layers,
GRASP. In each iteration, this set is updated with the generated and 60, 150 and 300 seconds on those with 6, 13 and 20
solution ID∗ if ID∗ is better than the best solution in ES or layers, respectively. Finally, we configure CPLEX to run for
sufficiently different from the other elite solutions. Diversity a maximum of 1800 seconds. This table shows for each
is measured as the number of positions that are not occupied procedure, the average number of crossings (C̄), the average
by the same vertices divided by the number of vertices in the percent deviation from the best solution found (% dev), the
graph (with a distance larger than a parameter γ), while the average percentage deviation between the heuristic solution
quality is evaluated by the objective function. The algorithm value and the CPLEX best solution value (% gap), the number
ends when no new solutions are admitted to ES. of best solutions (Bests), the number of optimum solutions
(Opt), and the CPU-time in seconds required to execute the
V. E XPERIMENTAL RESULTS method (T ime).

This section describes the experimental analysis to study the TABLE I


effectiveness and efficiency of the procedures presented above. C OMPARISON ON ENTIRE BENCHMARK SET ACCORDING TO INSTANCE
SIZE
In particular, we consider the following methods: GRASP
(construction phase + local search), and GRASP+PR where Procedures C % gap % dev Bests Opt T ime
we couple GRASP with Path Relinking. We also compare our 2 Layers (32 ≤ n ≤ 96), 171 instances
CPLEX 2408.50 - 0.00 171 171 0.77
heuristics with the solution obtained by running the integer GRASP 2409.19 0.14 0.14 161 161 1.11
linear programing proposed above with LocalSolver, and GRASP+PR 2408.92 0.14 0.14 164 164 1.18
CPLEX. LocalSolver 2785.47 17.01 17.01 12 12 20.11
6 Layers (48 ≤ n ≤ 288), 159 instances
The algorithms are implemented in C++, and the exper- CPLEX 9995.70 - 0.01 157 157 56.24
iments have performed in an Intel Corei7-4020HQ CPU GRASP 9997.43 0.13 0.14 81 81 5.53
@2.60Ghz x 8. The set of instances consists of 240 files with GRASP+PR 9994.32 0.08 0.08 100 98 5.39
LocalSolver 11024.89 16.59 16.6 0 0 62.43
2, 6, 13 and 20 as the number of layers and the graph density 13 Layers (104 ≤ n ≤ 611), 141 instances
varying in the range {0.065, 0.175, 0.3}. This set is generated CPLEX 23469.05 - 0.21 131 128 273.77
in line with previous graph drawing papers [8] and [5], and it GRASP 23319.41 0.13 0.33 29 27 15.22
GRASP+PR 23305.22 0.02 0.22 54 44 15.34
is available on-line in the web-page http://www.optsicom.es. LocalSolver 25530.24 15.95 16.16 0 0 162.06
To avoid over-training, we consider 24 representative in- 20 Layers (120 ≤ n ≤ 960), 138 instances
stances from the set of 240 to fine tune the algorithmic CPLEX 37918.20 - 0.38 118 116 383.73
GRASP 37522.42 0.03 0.39 21 20 25.77
parameters. Note that, an important element is the value of GRASP+PR 37495.44 -0.12 0.24 49 29 28.39
the slack, K, between the original position of the vertices and LocalSolver 40954.07 14.30 14.68 0 0 328.77
the feasible ones. In this work, we consider low values of this
parameter, K = 1, 2 and 3. Then, for each instance in the Table I shows that, as expected, GRASP+PR obtains better
testing set, we have at most three different instances, one for results than GRASP. It is worth mentioning that CPLEX is able
each value of K (if the number of incremental vertices in one to obtain the optimal solution in 572 out of the 609 instances,
layer is less than K, then this value cannot be considered). and, with similar CPU time as our heuristics, it is able to obtain
To sum up, we have 609 instances in our testing set, and 62 all the exact solutions for the small instances. However, in
instances in the training set. large instances, our heuristics are able to obtain similar quality

529
XVIII Conferencia de la Asociación Española para la Inteligencia Artificial

results as CPLEX with lower CPU time. Note that GRASP +


PR is able to obtain a % gap of −0.12 which means that
on average beats CPLEX. LocalSolver obtains the largest
deviations in both % dev and % gap, even if it is executed
for longer CPU times than the competing heuristics.
VI. C ONCLUSIONS
In this work, we propose a new mathematical model to
tackle the Multilayer Incremental Graph Drawing Problem.
We consider new constraints (by means of a paramenter K) to
preserve key characteristics when updating an existing draw-
ing. We develop a GRASP algorithm combined with a Path
Relinking to obtain high quality solutions in the long term. We
compare our heuristic with general solvers as CPLEX, which is
able to obtain optimal solutions in 572 out of the 609 instances,
and LocalSolver. GRASP+PR is competitive with them,
obtaining similar quality solutions as CPLEX in smaller times
on large instances, and outperforming LocalSolver.
R EFERENCES
[1] G. Di Battista, P. Eades, R. Tamassia, and I. G. Tollis. Graph Drawing:
Algorithms for the Visualization of Graphs. Prentice Hall PTR, Upper
Saddle River, NJ, USA, 1st edition, 1998.
[2] F. Glover and M. Laguna. Tabu Search. Kluwer Academic Publishers,
Norwell, MA, USA, 1997.
[3] M. Jünger, E. K. Lee, P. Mutzel, and T. Odenthal. A polyhedral approach
to the multi-layer crossing minimization problem. In International
Symposium on Graph Drawing, pages 13–24. Springer, 1997.
[4] M. Kaufmann and D. Wagner, editors. Drawing Graphs: Methods and
Models. Springer-Verlag, London, UK, UK, 2001.
[5] M. Laguna, R. Martı́ and V. Valls. Arc crossing minimization in
hierarchical digraphs with tabu search. Computers and Operations
Research, 24:1175–1186, 1997.
[6] M. Laguna and R. Martı́. Grasp and path relinking for 2-layer straight
line crossing minimization. INFORMS Journal on Computing, 11:44–
52, 1999.
[7] R. Martı́, A. Martı́nez-Gavara, J. Snchez-Oro, and A. Duarte. Tabu
search for the dynamic bipartite drawing problem. Computers &
Operations Research, 91:1–12, 2018.
[8] J. Sánchez-Oro, A. Martı́nez-Gavara, M. Laguna, A. Duarte, and
A. Martı́. Variable neighborhood scatter search for the incremental
graph drawing problem. Computational Optimization and Applications,
68:775–797, 2017.
[9] K. Sugiyama, S. Tagawa, and M. Toda. Methods for visual understanding
of hierarchical system structures. IEEE Trans. Syst. Man, Cybern.,
11:109–125, 1981.

530
XIII Congreso Español en Metaheurı́sticas y Algoritmos Evolutivos y Bioinspirados

Detección de puntos débiles en redes utilizando


GRASP y Path Relinking
Sergio Pérez-Peló Jesús Sánchez-Oro Abraham Duarte
Dept. of Computer Sciences Dept. of Computer Sciences Dept. of Computer Sciences
Universidad Rey Juan Carlos Universidad Rey Juan Carlos Universidad Rey Juan Carlos
C/Tulipán, S/N, 28933, Móstoles, Spain C/Tulipán, S/N, 28933, Móstoles, Spain C/Tulipán, S/N, 28933, Móstoles, Spain
Email: sergio.perez.pelo@urjc.es Email: jesus.sanchezoro@urjc.es Email: abraham.duarte@urjc.es

Resumen—El avance que se ha producido en la tecnología en segundo estará interesado en reforzar esos nodos importantes
los últimos años ha hecho que sea imprescindible disponer de con medidas de seguridad más robustas. Además, ambas partes
herramientas que permitan monitorizar y controlar las debili- quieren consumir la mínima cantidad de recursos posibles para
dades que aparecen en redes. Debido al carácter dinámico de
las redes, continuamente se conectan y desaparecen dispositivos minimizar los costes derivados del ataque / defensa: por un
de las mismas, siendo necesario reevaluar las debilidades que lado, el atacante está interesado en ocasionar el máximo daño
han aparecido tras cada modificación. La evaluación de estas posible a la red empleando la mínima cantidad de recursos
debilidades tiene como objetivo proporcionar información de posible; por otro lado, el defensor querrá reforzar la red
utilidad al responsable de la red para conocer qué nodos de minimizando los costes de mantenimiento y seguridad. Por
la misma es necesario reforzar. Los continuos cambios crean la
necesidad de disponer de herramientas que evalúen los puntos lo tanto, es interesante para ambas partes identificar cuáles
críticos en tiempos reducidos. En este trabajo se presenta un son los puntos más débiles en la red.
algoritmo metaheurístico basado en la metodología GRASP Definimos una red como un grafo G = (V, E), donde V
(Greedy Randomized Adaptive Search Procedure) para detectar es el conjunto de vértices (|V | = n) y E es el conjunto de
puntos débiles en redes. Además, se propone un método de
aristas (|E| = m). Un vértice v ∈ V representa un nodo de
combinación basado en Path Relinking para mejorar la calidad de
las soluciones generadas. Los resultados experimentales muestran la red, mientras que una arista (v1 , v2 ) ∈ E, con v1 , v2 ∈ V
la calidad de la propuesta comparándola con el mejor algoritmo indica que hay una conexión en la red entre los vértices v1 y
encontrado en el estado del arte. v2 . Definimos un separador de una red como un conjunto de
Index Terms—α-separator problem, GRASP, Path Relinking, vértices S ⊆ V cuya eliminación supone la separación de la
nodos críticos red en dos o más componentes conexas. Formalmente,
I. I NTRODUCCIÓN
En los últimos años la ciberseguridad se ha convertido en V \ S = C1 ∪ C2 . . . ∪ Cp
uno de los campos más relevantes para todo tipo de usuarios: ∀ (u, v) ∈ E ⋆ ∃ Ci : u, v ∈ Ci
desde empresas e instituciones hasta usuarios individuales.
El incremento del número de ataques a diferentes redes, así donde E ⋆ = {(u, v) ∈ E : u, v ∈ / S}.
como de la importancia de la privacidad en Internet, han Este trabajo se centra en encontrar un conjunto de vértices
creado la necesidad de tener redes más seguras, confiables y mínimo S ⋆ que permita separar la red G en componentes
robustas. Un ciberataque a una compañía que conlleve pérdida conexas de tamaño menor que α·n. En términos matemáticos,
de información personal de sus clientes puede resultar en un
importante daño económico y social [1]. Además, los ataques
de Denegación de Servicio (del inglés Denial of Service, DoS) S ⋆ ← arg min |S| : máx |Ci | ≤ α · n
S∈S Ci ∈V \S
y ataques de Denegación de Servicio distribuídos (del inglés
Distributed Denial of Service, DDoS) han ido siendo cada vez Cabe mencionar que el número de componentes conexas
más comunes, debido a que un ataque exitoso puede resultar en resultantes no es relevante para este problema. La restricción
la deshabilitación de un servicio de un proveedor de Internet, actual del problema del separador α (α-SP) es que el número
por ejemplo. Además, si otros servicios dependen a su vez de vértices en cada componente conexa debe ser menor o
del servicio atacado, podría producirse un fallo en cascada, igual que α · n. Este problema es N P-completo para redes
afectando a un mayor número de clientes [2]. de topología general cuando se consideran α ≥ 32 [3]. Se han
Es importante identificar cuáles son los nodos más im- propuesto algunos algoritmos en tiempo polinómico cuando la
portantes en una red. Ésta es una cuestión de interés para topología de la red es un árbol o un ciclo [4]. Sin embargo,
ambas partes de un ciberataque: el atacante y el defensor. El estos algorimos requieren tener un conocimiento previo de la
primero estará interesado en deshabilitar dichos nodos con topología de la red, lo que no es usual en problemas de la
el objetivo de hacer la red más vulnerable, mientras que el vida real.

531
XVIII Conferencia de la Asociación Española para la Inteligencia Artificial

E
E
E B
B
B F
F
F
A
A A D
D D

G
G G C
C C I
I I
H H
H
(a) (b) (c)
Figura 1: 1(a) Ejemplo de un grafo derivado de una red, 1(b) una solución factible con 4 nodos en el separador (B,C,E, y
I), y 1(c) una solución mejor con 2 nodos en el separador (A y B)

Este problema ha sido abordado tanto desde la perspectiva un procedimiento de búsqueda local sencillo, pero es común
exacta como la heurística. En concreto, se han presentado combinar esta metaheurística con procedimientos de búsqueda
algoritmos que resuelven el problema en un tiempo polinómico más complejos, como pueden ser Tabu Search [13] o Variable
para topologías como árboles o ciclos, así como un algorit- Neighborhood Search [14], entre otros, lo que prueba la
mo voraz con una relación de aproximación de α · n + 1 versatilidad de la metodología GRASP.
[4]. Adicionalmente, un algoritmo heurístico para estudiar II-A. Criterio voraz
los separadores y los Sistemas Autónomos de Internet se
propuso en [5]. Dependiendo del valor de α, el problema La fase de construcción necesita definir un criterio voraz
del separador α puede relacionarse con otros problemas bien g(v) que evalúe, para cada vértice v ∈ V , la relevancia de
conocidos. En particular, cuando α = n1 , es equivalente al insertar dicho vértice en la solución. Para el problema que
minimum vertex cover problem, y cuando α = n2 es análogo al estamos tratando, α-SP, el criterio voraz debe indicar cuáles
minimum dissociation set problem. Por lo tanto, el problema de los vértices que aún no han sido incluidos en la solución
del seaparador α es una generalización de estos problemas, son nodos críticos en la red.
que son también N P-completos [6]. En este trabajo se propone la utilización de criterios utiliza-
dos en el área del análisis de redes sociales, de manera que se
II. P ROPUESTA ALGORÍTMICA
tratará de identificar qué vértices serían los más importantes
de la red si ésta se tratara de una red social. En el análisis
Greedy Randomized Adaptive Search Procedure (GRASP), de redes sociales, un vértice es importante si mantiene a un
que en castellano se podría traducir como procedimientos de gran número de usuarios de la red conectados entre sí [15],
búsqueda voraz, aleatorizados y adaptativos, es un procedi- por lo que la analogía con el problema del α-SP es directa:
miento multi-arranque que fue originalmente propuesto en [7] un vértice es importante en la red si su desaparición hace que
pero no se definió formalmente hasta [8]. Los procedimientos los dispositivos conectados a él dejen de estar conectados.
multi-arranque son un conjunto de procedimientos que inten- Existen numerosas métricas para evaluar la importancia de
tan evitar quedar atrapados en óptimos locales reiniciando un usuario en una red social, siendo el cálculo de la mayoría
el procedimiento desde otro punto de inicio del espacio de de ellas muy costoso computacionalmente. Esto es debido a
búsqueda, lo que permite aumentar la diversificación de la que varias de las métricas, como pueden ser Betweenness [16]
estrategia de búsqueda. Esta metaheurística se ha utilizado o PageRank [17] necesitan conocer todos los caminos más
recientemente con éxito en varios problemas de optimización cortos que pasan entre cada par de usuarios de la red. En este
[9]–[11]. trabajo se utilizará la métrica denominada closeness [18], la
Cada iteración en GRASP tiene dos fases bien diferencia- cual considera que un vértice es importante si es alcanzable
das: construcción y mejora. La primera tiene como objetivo (i.e., se puede llegar a él a través de muchos caminos) por
generar una solución inicial de calidad para el problema, un elevado número de vértices de la red. Más formalmente,
mientras que la segunda trata de mejorar la solución inicial dada una red conexa G, el valor del closeness de un vértice se
a través de algún método de optimización local [12]. Tra- calcula como la suma de la longitud de las rutas más cortas
dicionalmente el optimizador de la segunda fase suele ser entre el nodo en cuestión y el resto de nodos en el grafo.

532
XIII Congreso Español en Metaheurı́sticas y Algoritmos Evolutivos y Bioinspirados

Cabe destacar que la evaluación de esta métrica solo necesita objetivo comprobar que todas las componentes conexas de la
conocer el camino más corto entre cada par de vértices, por red tienen un tamaño inferior a α · n si se eliminan los nodos
lo que basta con realizar un recorrido en anchura (si la red incluidos en la solución parcial S.
no es ponderada) o aplicar el algoritmo de Dijkstra (si la red Tras ello, se calculan el mínimo y el máximo valor (pasos
es ponderada). La idea que subyace bajo esta métrica es que, 5 y 6, respectivamente) para la función voraz elegida. En este
cuanto más central es un nodo, más cerca está de todos los caso, se utiliza el valor de closeness descrito en la Sección
demás nodos. II-A. Estos dos valores se utilizan para calcular un umbral µ
El valor del closeness de un nodo v ∈ V , definido como (paso 7) que limitará los vértices que entran a formar parte de
C(v) se evalúa como el cálculo inverso de la suma de las la lista de candidatos restringida RCL (paso 8). El valor del
distancias desde ese nodo v hasta el resto de nodos de la red umbral dependerá de un parámetro β (con 0 ≤ β ≤ 1) que
u ∈ V \ {v}. En términos matemáticos, controla la aleatoridad o voracidad del método. Por un lado, si
β = 0, entonces µ = gmáx y, por tanto, solo se considerarán
1 en la RCL aquellos vértices con el máximo valor de closeness,
C(v) ← P resultando en un método completamente voraz. Por otra parte,
u∈V \S d (v, u)
si β = 1, entonces µ = gmı́n , formando parte de la RCL
donde d (v, u) es la distancia entre los nodos v y u. En todos los vértices de la CL, convirtiéndose así en un método
este trabajo, se considera que la distancia entre dos vértices totalmente aleatorio. De esta forma, cuanto mayor sea el valor
u, v ∈ V será la longitud del camino más corto que conecta del parámetro β, más aleatorio será el método, y viceversa. La
u con v. Cabe destacar que esta métrica solo tiene sentido en Sección III discutirá cómo afecta el valor de este parámetro a
componentes conexas, ya que de otra manera no sería posible la calidad de las soluciones obtenidas.
encontrar un camino entre los vértices u y v.
II-C. Fase de mejora
II-B. Fase de construcción Las soluciones generadas en la fase de construcción se han
El procedimiento de construcción parte de una solución construido mediante un procedimiento aleatorizado (a través
vacía e iterativamente añade vértices a dicha solución hasta del parámetro β), por lo que, en general, es posible aplicar
que ésta es factible. En el caso del α-SP, inicialmente ningún un método de optimización local para mejorar la calidad
vértice ha sido añadido al separador, por lo que es necesario de la solución. Aunque es posible utilizar cualquier tipo de
añadir vértices al mismo hasta cumplir la restricción de que la optimizador en esta fase, el problema tratado requiere de la
red se encuentra dividida en componentes conexas de tamaño obtención de soluciones en períodos cortos de tiempo, por lo
inferior a α · n. El Algoritmo 1 muestra el pseudocódigo del que se han descartado optimizadores complejos, optando por
método de generación de soluciones propuesto. un procedimiento de búsqueda local tradicional.
Los procedimientos de búsqueda local tienen como objetivo
Algorithm 1 Construir (G, β) encontrar el óptimo local de una solución con respecto a una
1: v ← Random(V ) vecindad predefinida. En primer lugar, es necesario definir qué
2: S ← {v} vecindad va a explorar el procedimiento. En este trabajo se
3: CL ← V \ {v} considerará la vecindad 2 × 1, la cuál contiene a todas las
4: while not esFactible(S, G) do soluciones alcanzables desde una solución inicial S mediante
5: gmı́n ← mı́nv∈CL C(v) la eliminación de dos vértices que estaban originalmente en la
6: gmáx ← máxv∈CL C(v) solución y la inserción de un nuevo vértice en la misma. Cabe
7: µ ← gmáx − β · (gmáx − gmı́n ) destacar que cualquier movimiento dentro de esta vecindad
8: RCL ← {v ∈ CL : C(v) ≥ µ} que produzca una solución factible habrá mejorado el valor
9: v ← Random(RCL) de la función objetivo, ya que habrá reducido el conjunto de
10: S ← S ∪ {v} vértices que necesitan ser eliminados de la red en una unidad.
11: CL ← CL \ {v} Más formalmente, la vecindad se define como:
12: end while
13: return S N (v, S) ← {S ′ : S ′ ← S \ {u, v} ∪ {w},
∀ u, v ∈ S ∧ ∀ w ∈ V \ S}
El procedimiento comienza eligiendo al azar el primer
vértice que va a ser incluido en la solución (pasos 1-2). La Existen dos métodos tradicionales para explorar la vecindad
elección aleatoria de este primer elemento permite aumentar definida: First Improvement y Best Improvement. El primero
la diversidad de las soluciones generadas en la fase de cons- recorre todas las soluciones de la vecindad, realizando siempre
trucción. A continuación, se crea la lista de candidatos CL el primer movimiento que conduzca a una solución de mayor
con todos los vértices de la red salvo el elegido inicialmente calidad, comenzando la búsqueda de nuevo desde la nueva
(paso 3). El método de construcción entonces añade un nuevo solución. Sin embargo, Best Improvement primero explora
vértice a la solución hasta que ésta satisfaga las restricciones todas las soluciones existentes en la vecindad, realizando el
del problema (pasos 4-12). La función esFactible tiene como movimiento que lleve a la solución de mayor calidad.

533
XVIII Conferencia de la Asociación Española para la Inteligencia Artificial

En este trabajo se considerará únicamente la variante First


Improvement debido a dos motivos principales. En primer
Swap(S ′ , v, u) ← S ′ \ {v} ∪ {u} : v ∈ S ′ \ Sg , u ∈ Sg \ S ′
lugar, First Improvement requiere de un menor coste compu-
tacional ya que no recorre la vecindad completa para realizar En cada iteración, Path Relinking realiza un movimiento
un movimiento y, como se ha mencionado en otras ocasiones, de swap que genera una nueva solución intermedia en la
en este problema se requiere un tiempo de cómputo reducido. trayectoria. Cabe destacar que este movimiento produce, con
Por otra parte, dada la vecindad 2 × 1 definida, cualquier alta probabilidad, una solución no factible, por lo que será
movimiento que lleve a una solución factible producirá una necesario reparar la solución intermedia generada tras un
solución cuyo valor de la función objetivo se habrá mejorado movimiento Swap(S ′ , v, u). Para ello, tras el movimiento, se
en una unidad, sea cual sea el movimiento que se realice. insertarán de manera aleatoria tantos nodos en la solución
Por tanto, para esta vecindad no es útil comprobar todos los como sean necesarios para que la solución vuelva a ser
posibles movimientos disponibles. factible.
Teniendo en cuenta lo mencionado anteriormente, el pro- Existen numerosas variantes de Path Relinking que difieren
cedimiento de búsqueda local propuesto para el problema del en cómo se construye la trayectoria. Tradicionalmente se
α-SP consiste en recorrer de manera aleatoria la vecindad de consideran dos variantes de Path Relinking: Greedy Path Re-
cada una de las soluciones generadas en la fase de construc- linking (GPR) y Random Path Relinking (RPR). GPR, en cada
ción, parando cuando no se encuentre ninguna solución de iteración, genera una solución intermedia por cada elemento
mayor calidad en la misma, y devolviendo la mejor solución incluido en Sg que no está incluido en la solución intermedia
encontrada en la búsqueda. S ′ , continuando la trayectoria por la mejor solución interme-
dia de entre las generadas. Por otra parte, RPR selecciona
II-D. Path Relinking aleatoriamente un elemento de entre los disponibles en Sg
que no están incluidos en S ′ y genera una única solución
Path Relinking (PR) es un método de combinación de intermedia con un movimiento swap donde se incluya dicho
soluciones propuesto originalmente como una metodología vértice. Mientras que GPR se centra en la intensificación,
para integrar estrategias de intensificación y diversificación en RPR tiene como objetivo la diversificación. De nuevo, la
el contexto de la búsqueda tabú [19]. El comportamiento de PR exploración exhaustiva de la trayectoria de GPR hace que
se basa en explorar las trayectorias que conectan soluciones de no sea un método adecuado para el problema α-SP, debido
alta calidad, con el objetivo de generar soluciones intermedias al elevado coste computacional. En su lugar, se considera la
que, eventualmente, pueden ser mejores que las soluciones variante RPR, menos exigente computacionalmente al explorar
originales utilizadas para construir la trayectoria. Laguna y una única solución en cada etapa de la trayectoria. Para
Martí [20] adaptaron Path Relinking en el contexto de GRASP compensar la falta de intensificación en esta etapa, se aplicará
como un método destinado a aumentar la intensificación. el procedimiento de mejora descrito en la Sección II-C a la
El algoritmo de Path Relinking opera sobre un conjunto de mejor solución encontrada en la trayectoria.
soluciones, llamado Elite Set (ES), que se encuentra ordenado En este trabajo el Elite Set se compone de todas las
siguiendo un criterio descendiente de acuerdo al valor de soluciones generadas en la fase de construcción y mejora. Es
un criterio de calidad predefinido de cada solución. En este importante aclarar que no se permite la entrada de soluciones
trabajo, consideramos como criterio de calidad el valor de ya existentes en el Elite Set, por lo que todas las soluciones
la función objetivo de la solución. En concreto, el Elite Set combinadas serán siempre diferentes entre sí.
se compone de las soluciones de mayor calidad generadas
mediante el algoritmo GRASP. Este diseño generalmente se III. R ESULTADOS COMPUTACIONALES
denomina estático [21], ya que en primer lugar se aplica Esta sección está dedicada a analizar el rendimiento de
GRASP para construir el conjunto de élite y posteriormente los algoritmos propuestos y comparar los resultados obtenidos
se aplica Path Relinking para explorar trayectorias entre todos con el mejor método previo encontrado en el estado del arte.
los pares de soluciones en el ES. Por otra parte, el diseño Los algoritmos se han desarrollado en Java 9 y todos los
dinámico considera la actualización del Elite Set cada vez que experimentos se han llevado a cabo en un Intel Core 2 Duo
se explora una trayectoria. 2,66 GHz con 4 GB de RAM.
Dadas una solución inicial, Si y una solución guía Sg , Path El conjunto de instancias utilizadas en esta experimentación
Relinking crea una trayectoria de soluciones intermedias desde se ha generado utilizando el mismo generador de grafos
Si hasta Sg a través de la inserción en Si de características propuesto en el mejor trabajo previo [22]. Específicamente, los
pertenecientes a Sg que aún no se encuentran en Si . En el grafos se generan utilizando el modelo Erdös Rényi [23], en
contexto de α-SP, se propone la eliminación de un vértice v el que cada nuevo nodo insertado tiene la misma probabilidad
que se encuentra en la solución que se está explorando en la de estar conectado a un nodo ya existente en el grafo. Se
trayectoria S ′ pero no está incluido en la solución guía, a la ha generado un conjunto de 28 instancias de 100 vértices de
vez que se inserta un elemento u que no se encuentra en S ′ diferente densidad (de 200 a 500 aristas).
pero sí en Sg . Formalmente, se define entonces el movimiento La experimentación se encuentra dividida en dos partes dife-
swap de la siguiente manera: rentes: experimentación preliminar y experimentación final. La

534
XIII Congreso Español en Metaheurı́sticas y Algoritmos Evolutivos y Bioinspirados

primera está diseñada para ajustar el único parámetro del que Cuadro II: Comparativa de los resultados obtenidos por el
requiere GRASP, β, que controla la aleatoriedad del método, algoritmo previo (RW) frente a los algoritmos GRASP y Path
mientras que la segunda se dedica a analizar el rendimiento Relinking propuestos en este trabajo.
de la mejor variante de GRASP junto con Path Relinking en F.O. Tiempo (s) Desv. ( %) #Mejores
comparación con el mejor algoritmo anterior encontrado en el
GRASP 31.93 18.53 7.42 % 3
estado del arte. PR 29.43 275.67 0.00 % 28
Todos los experimentos proporcionan las siguientes métri- RW 46.46 721.58 37.81 % 0
cas: F.O., el valor de la función objetivo promedio; Tiempo
(s), el tiempo promedio de cómputo medido en segundos;
Desv.( %), la desviación porcentual promedio con respecto a la de la mitad del tiempo necesitado por el mejor método previo.
mejor solución encontrada en el experimento; y #Mejores, el Cabe destacar que, incluso GRASP de manera aislada, sin
número de veces que un algoritmo alcanza la mejor solución considerar Path Relinking, obtiene mejores resultados en todas
del experimento. las métricas que el método previo.
El experimento preliminar considerará un subconjunto de Para confirmar que existen diferencias estadísticamente sig-
20 instancias para evitar el sobreajuste del algoritmo. Para nificativas entre los métodos propuestos, se ha llevado a cabo
ajustar el valor del parámetro, se ha ejecutado la fase de el test no paramétrico de Wilcoxon. El p-valor menor que
construcción y mejora para generar un total de 100 soluciones 0.00001 demuestra que sí que existen diferencias entre los
por cada instancia, devolviendo la mejor solución encontrada, métodos, resultando el siguiente ranking: PR (1.05), GRASP
con β = {0,25, 0,50, 0,75, RND}, donde el valor RND indica (1.95), y RW (3.00). Además, se ha llevado a cabo el test de
que se obtiene un valor de β aleatorio en cada construcción. Wilcoxon con signos para comparar algoritmos por pares. La
La Tabla I muestra los resultados obtenidos para cada valor. comparativa de PR frente a RW ha resultado en un p-valor
menor que 0.00001, al igual que el análisis entre GRASP y
Cuadro I: Rendimiento de GRASP (100 fases de construcción PR. Analizando estos resultados, podemos concluir que Path
y mejora) con diferentes valores de β Relinking emerge como el mejor algoritmo del estado del arte
para el problema del α-SP.
β F.O. Tiempo (s) Desv. ( %) #Mejores
0.25 29.75 18.37 2.31 11 IV. C ONCLUSIONES
0.50 29.90 18.92 2.91 12
0.75 31.65 18.81 7.09 7
En este trabajo se ha presentado un algoritmo basado
RND 29.80 18.99 3.02 10 en GRASP para la detección de puntos críticos en redes.
Además, las soluciones generadas se combinan utilizando Path
Como se puede observar, el valor de β que obtiene los Relinking para mejorar la calidad de las soluciones obtenidas.
mejores resultados es β = 0,25, que se corresponde con Los resultados obtenidos superan a las mejores soluciones
la variante que proporciona una menor aleatoriedad a la encontradas en el estado del arte, todo ello respaldado por
construcción. Este resultado parece indicar que el criterio de test estadísticos. El algoritmo GRASP es capaz de encontrar
closeness utilizado es muy preciso para identificar los vértices soluciones de calidad en cortos períodos de tiempo (menos
críticos de la red. Por lo tanto, la diversificación se incluirá de 20 segundos en promedio), mientras que Path Relinking
en mayor medida con la inclusión del método de combinación es un procedimiento más costoso computacionalmente pero
Path Relinking. capaz de mejorar significativamente las soluciones encontradas
El experimento final está diseñado para comparar los resul- por GRASP. Ambos métodos obtienen mejores soluciones que
tados obtenidos incluyendo el método de combinación Path el método previo, basado en Random Walks combinado con
Relinking respecto al mejor algoritmo encontrado en el estado modelos de Markov. La solución propuesta emerge como el
del arte, esta vez ejecutado sobre el total de instancias disponi- mejor método en el estado del arte, pudiendo obtener solucio-
bles. El mejor algoritmo previo está basado en Random Walks nes de alta calidad en tiempo real con GRASP y mejorarlas
combinado con Markov Chains. Debido a no haber recibido posteriormente con Path Relinking en aquellas situaciones en
respuesta por parte de los autores previos, los resultados las que el tiempo no sea crítico.
proporcionados son los obtenidos tras reimplementar detalla- AGRADECIMIENTOS
damente el método previo [24]. Los resultados se muestran en
Este trabajo ha sido parcialmente financiado por el Minis-
la tabla II.
terio de Economía y Competitividad, ref. TIN2015-65460-C2-
Como se puede observar, el mejor algoritmo resulta ser Path
2-P.
Relinking, obteniendo el mejor resultado en todas las instancias
del conjunto de datos utilizado. Comparando los resultados R EFERENCIAS
frente a GRASP, podemos concluir que Path Relinking es [1] G. Andersson, P. Donalek, R. Farmer, N. Hatziargyriou, I. Kamwa,
capaz de mejorar los resultados previos, quedando GRASP P. Kundur, N. Martins, J. Paserba, P. Pourbeik, J. Sanchez Gasca,
a una desviación del 7.42 %, a cambio de un mayor coste R. Schulz, A. Stankovic, C. Taylor, and V. Vittal, “Causes of the 2003
major grid blackouts in North America and Europe, and recommended
computacional (18.53 frente a 275.67 segundos). Aún con este means to improve system dynamic performance,” IEEE Transactions on
incremento en el tiempo de cómputo, sigue requiriendo menos Power Systems, vol. 20, no. 4, pp. 1922–1928, 2005.

535
XVIII Conferencia de la Asociación Española para la Inteligencia Artificial

[2] P. Crucitti, V. Latora, and M. Marchiori, “Model for cascading failures


in complex networks,” Phys. Rev. E, vol. 69, p. 045104, 2004.
[3] U. Feige and M. Mahdian, “Finding small balanced separators.” in
STOC, J. M. Kleinberg, Ed. ACM, 2006, pp. 375–384.
[4] M. Mohamed-Sidi, “K-Separator Problem. (Problème de k-Sèparateur).”
Ph.D. dissertation, Telecom & Management SudParis, Èvry, Essonne,
France, 2014.
[5] M. Wachs, C. Grothoff, and R. Thurimella, “Partitioning the Internet.”
in CRiSIS, F. Martinelli, J.-L. Lanet, W. M. Fitzgerald, and S. N. Foley,
Eds. IEEE Computer Society, 2012, pp. 1–8.
[6] M. Garey and D. Johnson, Computers and Intractability - A guide to
the Theory of NP-Completeness. San Fransisco: Freeman, 1979.
[7] T. A. Feo and M. G. C. Resende, “A probabilistic heuristic for a
computationally difficult set covering problem,” Operations Research
Letters, vol. 8, no. 2, pp. 67 – 71, 1989.
[8] T. A. Feo, M. G. C. Resende, and S. H. Smith, “A greedy randomized
adaptive search procedure for maximum independent set.” Operations
Research, vol. 42, no. 5, pp. 860–878, 1994.
[9] A. Duarte, J. Sánchez-Oro, M. G. C. Resende, F. Glover, and R. Martí,
“Greedy randomized adaptive search procedure with exterior path re-
linking for differential dispersion minimization.” Inf. Sci., vol. 296, pp.
46–60, 2015.
[10] J. D. Quintana, J. Sánchez-Oro, and A. Duarte, “Efficient greedy
randomized adaptive search procedure for the generalized regenerator
location problem.” Int. J. Comput. Intell. Syst., vol. 9, no. 6, pp. 1016–
1027, 2016.
[11] J. Sánchez-Oro, M. Laguna, R. Martí, and A. Duarte, “Scatter search for
the bandpass problem,” Journal of Global Optimization, vol. 66, no. 4,
pp. 769–790, 2016.
[12] F. W. Glover and G. A. Kochenberger, Handbook of metaheuristics.
Springer Science & Business Media, 2006, vol. 57.
[13] F. Glover and M. Laguna, “Tabu search,” in Handbook of combinatorial
optimization. Springer, 2013, pp. 3261–3362.
[14] P. Hansen and N. Mladenović, “Variable neighborhood search,” in Search
methodologies. Springer, 2014, pp. 313–337.
[15] J. Scott, Social Network Analysis: A Handbook. Sage Publications,
2000.
[16] U. Brandes, “A faster algorithm for betweenness centrality,” Journal of
mathematical sociology, vol. 25, no. 2, pp. 163–177, 2001.
[17] L. Page, S. Brin, R. Motwani, and T. Winograd, “The pagerank citation
ranking: Bringing order to the web.” Stanford InfoLab, Tech. Rep., 1999.
[18] M. E. Newman, “The mathematics of networks,” The new palgrave
encyclopedia of economics, vol. 2, no. 2008, pp. 1–12, 2008.
[19] F. Glover, Tabu search and adaptive memory programming – advances,
applications, and challenges. Dordrecht, Massachusetts, USA: Kluwer
Academic Publishers, 1996.
[20] M. Laguna and R. Martí, “Grasp and path relinking for 2-layer straight
line crossing minimization.” INFORMS Journal on Computing, vol. 11,
no. 1, pp. 44–52, 1999.
[21] F. Glover, M. Laguna, and R. Martí, “Fundamentals of scatter search and
path relinking,” Control and cybernetics, vol. 29, no. 3, pp. 653–684,
2000.
[22] J. Lee, J. Kwak, H. W. Lee, and N. B. Shroff, “Finding minimum
node separators: A markov chain monte carlo method,” in DRCN
2017 - Design of Reliable Communication Networks; 13th International
Conference, March 2017, pp. 1–8.
[23] P. Erdős and A. Rényi, “On random graphs,” Publications Mathematicae,
vol. 6, p. 290, 1959.
[24] B. Hassibi, M. Hansen, A. Dimakis, H. Alshamary, and W. Xu, “Opti-
mized markov chain monte carlo for signal detection in mimo systems:
An analysis of the stationary distribution and mixing time,” Signal
Processing, IEEE Transactions on, vol. 62, no. 17, pp. 4436–4450, 2014.

536
XIII Congreso Español en Metaheurı́sticas y Algoritmos Evolutivos y Bioinspirados

Where facility centers should be located?


A.D. López-Sánchez J. Sánchez-Oro
Department of Economics, Quantitative Methods and Economic History Department of Computer Science
Pablo de Olavide University Rey Juan Carlos University
Sevilla, Spain Madrid, Spain
adlopsan@upo.es jesus.sanchezoro@urjc.es

A.G. Hernández-Dı́az M. Laguna


Department of Economics, Quantitative Methods and Economic History Leeds School of Business
Pablo de Olavide University University of Colorado
Sevilla, Spain Boulder, Colorado
agarher@upo.es laguna@colorado.edu

Abstract—Facility location problems aim to determine the best optimizes all objectives, or, in other words, the value of one
position to place facility centers. This task is not easy since many objective function cannot be improved without deteriorating
objectives may be taken into consideration to choose the best the value of at least another objective function. Those solutions
possibility and the locations can be substantially different. This
paper presents a Scatter Search algorithm with Path Relinking are known as efficient solutions, non-dominated solutions or
to decide where facility centers should be located depending Pareto optimal solutions.
on the objective functions under consideration. The objectives The mo-FLP that optimizes f1 , f2 , and f3 , was recently
considered in this study are to minimize the distance between studied by Karatas and Yakici, see [10]. The authors devel-
demand points and their nearest facilities, to maximize the oped an hybrid algorithm, named ITER-FLOC, that combines
number of demand points covered by a facility center and to
minimize the maximum distance between demand points and branch & bound techniques and iterative goal programming.
their nearest facilities. Then, this problem is addressed as a three- In particular, authors proposed a different formulation for
objective optimization problem and the algorithm proposed is each considered objective. Initially, lower and upper bounds
compared against other competitors obtaining promising results for each objective are evaluated. Then, for each iteration of
according to three different performance metrics. the ITER-FLOC algorithm, the location models are solved,
Index Terms—Scatter Search, Path Relinking, Multi-objective
optimization problems, Facility location problems verifying if the termination criterion has been achieved. If
so, the algorithm ends, returning the Pareto front constructed.
Otherwise, the lower and upper bounds of each objective are
I. I NTRODUCTION
updated. Prior to executing the next iteration, the location
It is not an easy task to locate facility centers since many models are updated with additional constraints.
objectives may be taken into consideration to choose the best They are able to generate the Pareto optimal solutions
possibility. Depending on the objective and the constraints with high level of diversity and cardinality. However, the
imposed by the decision-maker, the facility centers may be drawbacks are the requirement of preference information since
located in different places. Hence, the best location may be goal programming is considered an a priori method and its
substantially different depending on the objective function slowness because it an exact algorithm that needs to be solve
considered for optimization. Specifically, this work is focused multiple times (one for each considered goal). Additionally,
on three common objective functions: f1 , with the aim of the method requires from several input parameters that can
minimizing the average distance between demands and their difficult the scalability of the algorithm for new datasets.
nearest facilities; f2 , focused on covering the maximum num- Here, the mo-FLP is addressed using a Scatter Search algo-
ber of demand points; and f3 , which minimizes the maximum rithm combined with Path Relinking (SSPR). The output of the
distance between demand points and their nearest facilities. algorithm is the approximation of the Pareto front containing
But what happens when the decision-maker wants to optimize efficient solutions. A variety of optimization problems has
all the objectives at the same time? In such a case, the location been solved and the computational results indicate that the
problem becomes a multi-objective facility location problem Scatter Search algorithm is able to find the Pareto set in a
(mo-FLP) in which the objectives are usually in conflict. simple run within short computational time.
That is, there is not a single solution that simultaneously This work is structured as follows. Section II describes the
problem. Section III gives details of the Scatter Search algo-
J. Sánchez-Oro is supported by the Spanish Ministry of “Economı́a y rithm with Path Relinking implemented to solve the problem
Competitividad”, Grant Refs. TIN2015-65460-C2-2-P. A.D. López-Sánchez
and A.G. Hernández-Dı́az acknowledge support from the Spanish Ministry of under consideration. Section IV presents the computational
Science and Innovation through Project ECO2016-76567-C4-1-R. results. Finally, Section V summarizes the paper and discusses

537
XVIII Conferencia de la Asociación Española para la Inteligencia Artificial
P
future work. Initialization

II. L OCATION P ROBLEM D EFINITION


Diversiication Improvement
Generation Method Method
Let I = {1 . . . m} be the set of available locations to host a
facility center and J = {1 . . . n} the set of demand points that
requires to be covered by a facility center. Each demand point
i ∈ I has an associated weight wi that represents the cost of
Improvement Reference Set
satisfying its necessity with a facility center. Additionally, let Method Update Method

dij ≥ 0 be the distance between a candidate location i ∈ I and


Solution Combination
a demand point j ∈ J. The distance is evaluated as the length Method

of the shortest path that connects x with y. A solution S for RefSet

a facility location problem is then represented as the set of p


RefSet1
candidate locations to host a facility center, and the objective Subset Generation
of the problem is to find a solution with the optimum value Method
RefSet2
with respect to one or more objective function.
Stop if no new
This work is focused on optimizing three different objective solutions in the
Reference Set
functions simultaneously, becoming a multi-objective problem.
The first considered objective function, f1 , is focused on Fig. 1. Scatter Search algorithm.
minimizing the average weighted distance between the demand
points and their nearest facility center, which can be found in
the literature as the p-Median Problem (pMP). Given a solution
The method firstly generates an initial population P . These
S, the evaluation of f1 is formally defined as:
solutions are generated using a diversification generation
method (Section III-A). Then, a local optimum for each
1X solution is found by an improvement method (Section III-B).
f1 (S) ← wj · di⋆ j , where i⋆ ← arg min dij
n i∈S It is important to remark that there are not repeated solutions
j∈J
in the initial population P .
The second objective function, f2 , tries to maximize the
Traditional implementations of Scatter Search constructs
number of demand points whose necessity is satisfied by the
the reference set RefSet with the β/2 best solutions of set
selected candidate locations, which is usually referenced as
P in terms of objective function value. This work adapt
the Maximal Coverage Location Problem (MCLP). A demand
this criterion for a multi-objective approach, by dividing the
point is covered by a facility center if the distance between
RefSet in three subsets, RefSet 1 , RefSet 2 , and RefSet 3 , with
them is smaller or equal than a predefined threshold r. More
|RefSet 1 | = |RefSet 2 | = RefSet 3 = β. In particular, RefSet 1
formally,
initially contains the best β/2 solutions with respect to f1 ,
  while RefSet 2 and RefSet 3 contains the best β/2 ones with
f2 (S) ← j ∈ J : di⋆ j ≤ r, where i⋆ ← arg min dij
respect to f2 and f3 , respectively. The remaining β/2 solutions
i∈S for each RefSet are selected as the most diverse solutions
among the remaining solutions in P . Diversity between a
The third objective function, f3 , is intended to minimize
solution S and the RefSet under construction is measured as
the maximum distance between the demand points and the
the minimum distance between S and every solution in the
facility centers, which result in the p-Center Problem (pCP).
RefSet, considering the distance between two solutions as the
This objective function is formally defined as:
number of candidate locations that differs in both solutions.
Once the RefSet has been created, Scatter Search selects
f3 (S) ← max di⋆ j , where i⋆ ← arg min dij the subsets of reference solutions that will be combined with
j∈J i∈S
the aim of finding new trial solutions. The most common
Some of the first studies dealing the previous location implementation of the subset generation method consists of
problems were proposed by [2], [8], [9]. combining all pairs of solutions included in the RefSet. Consid-
ering that we maintain three RefSet, this implementation would
III. S CATTER S EARCH ALGORITHM WITH PATH be rather computationally demanding. Instead, we generate
R ELINKING all pairs of solutions (S, S ′ ) such that S and S ′ belong
Scatter Search (SS), first proposed by Glover, see [5], is to different RefSet (i.e., S ∈ RefSeti , S ′ ∈ RefSetj , with
a metaheuristic framework which generates, maintains, and 1 ≤ i, j ≤ 3 ∧ i 6= j).
transforms a reference set of solutions, RefSet. It has been The solution combination method (Section III-C) is de-
successfully applied to a large variety of optimization prob- signed to combine all the subsets generated in the previous
lems [12], [13]. Figure 1 depicts the general scheme for Scatter step in order to generate new solutions that become candidate
Search. for entering in the RefSet. Regarding that the moFLP considers

538
XIII Congreso Español en Metaheurı́sticas y Algoritmos Evolutivos y Bioinspirados

three different objective functions, a local optimum is found that α ∈ [0, 1] is a parameter of the method that controls
with respect to each one of the by using the improvement the randomness of the constructive procedure. On the one
method. Then, each improved solution is evaluated for being hand, if α = 0 then the RCL would contain the candidates
included in its corresponding RefSet. In particular, a solution with the minimum greedy function value, being a totally
enters in the RefSet if it is better than the worst solution already greedy procedure. On the other hand, when α = 1, the RCL
in the RefSet. It is worth mentioning that the size of the RefSet contains all the candidate locations in CL, becoming a random
remains constant throughout the whole process. Therefore, procedure. Then, it is interesting to find a balance between
the new solution must replace another one. Specifically, the diversification and intensification by varying the value of the
new solution replaces the most similar solution already in the α parameter. A new candidate is selected in each iteration
RefSet that presents a quality smaller or equal than it. following this strategy until p candidate locations already host
Scatter Search iterates until a stopping criterion is met. a facility.
The algorithm proposed in this work stops when it has not
B. Improvement Method
been possible to include new solutions in any of the RefSet,
returning the set of efficient solutions found during the search. The diversification generation method is designed to pro-
duce not only high quality solutions, but also diverse ones.
A. Diversification Generation Method The increase in the diversity of the solutions generated usually
The diversification generation method (DGM) is designed implies a decrease in the quality of those solutions. Therefore,
for creating an initial set of solutions P which will become it is interesting to use a local improving method designed
the source for creating the initial RefSet. On the one hand, to find a local optimum with respect to a previously defined
P should contain high quality solutions in order to guide the neighborhood.
search through promising regions of the search space. On the Regarding the algorithmic proposal for the moFLP, the so-
other hand, solutions in P must be diverse enough to provide lutions included in the set of initial solutions P can be further
different solutions for the combination stage, thus diversifying improved using a local optimizer. Scatter Search is a versatile
the search. methodology than allows using different types of optimizers,
We propose three different constructive methods in this from local search methods to complete metaheuristics like
work, DGM 1 , DGM 2 , and DGM 3 each one of them focused Tabu Search or VNS, among others (see [REF AUTOCITA]
on generating promising solutions for f1 , f2 , and f3 , respec- for some successfull application of complete metaheuristics in
tively. With the aim of increasing the diversity of the set the improving phase). For this problem, we propose a local
of solutions constructed, we propose a Greedy Randomized search method designed to improve the quality of the initial
Adaptive Search Procedure (GRASP). GRASP is a multi-start solutions and of those resulting from the combination method.
methodology originally proposed by [4], that is conformed The computational effort required to evaluate the solutions
by two stages: construction and improvement. The former makes the use of complete metaheuristics not suitable for the
consists of a greedy, randomized, and adaptive construction problem under consideration.
of a solution while the latter is designed for finding a local Prior to define the local improvement method, it is necessary
optimum with respect to a predefined neighborhood. to present the neighborhood of solutions considered by the
The diversification generation method proposed in this work method. We define the neighborhood N (S) as all the solutions
follows a traditional GRASP construction scheme. The method that can be reached from an initial solution S by performing
initially creates a candidate list CL with all the candidate loca- a single interchange move, which consists of removing a
tions available to host a facility. Then, each candidate location selected location and replacing it with any non-selected facility
is evaluated with a greedy function that estimates the relevance location. More formally,
of locating a facility in that candidate. For this problem, we
propose a different greedy function for each objective function
N (S) ← {S ′ : S ′ ← S \ {v} ∪ {u} ∀ v ∈ S ∀ u ∈ V \ S}
considered f1 , f2 , f3 . In particular, the greedy function value
for each candidate location is calculated as the corresponding Having defined N (S), the local search method proposed
objective value (f1 , f2 , and f3 , respectively) if the location is visits all neighbor solutions in a random order and replaces
assigned to host a facility. After evaluating all the candidates, the incumbent solution with the first neighbor solution with a
the method calculates a threshold µ as follows: better objective function value. It is worth mentioning that the
local search proposed follows a first improvement approach in
order to reduce the computational effort required to apply it.
µ ← gmin + α · (gmax − gmin )
Specifically, if an interchange move results in an improvement
This threshold is used for constructing the restricted candi- with respect to the objective function being optimized, the
date list RCL, that contains the most promising candidates to move is performed, restarting the search with the new best
host a facility. In particular, the RCL is conformed with all the solution. This strategy reduces the complexity of the search
candidate locations whose greedy function value is smaller or since the opposite strategy, best improvement, requires the
equal than threshold µ. For each iteration, a random element complete exploration of the neighborhood in each iteration
is selected from the RCL to host the next facility. Notice to select the best solution in the neighborhood.

539
XVIII Conferencia de la Asociación Española para la Inteligencia Artificial

In the framework of Scatter Search, the improvement IV. C OMPUTATIONAL R ESULTS


method is applied in two different stages, see Figure 1. First In this section the numerical results are shown in order to
of all, it is used for locally improving the solutions that prove the superiority of the Scatter Search algorithm with Path
are included in the initial population. It is worth mentioning Relinking in comparison to the algorithm proposed by Karatas
that the set P is divided into three subsets (one for each and Yakici in [10].
objective function), so the local search method improves each Since the original instances are not available, we request
solution with respect to the objective function considered for the code from the previous work in order to have a fair
its construction. comparison. Additionally, 20 new instances of sizes were
The local search method is also applied to those solutions generated following the instructions of the previous work. The
resulting from the combination stage. As it is described in instances are divided into three sets depending on their size:
Section III-C, the combination stage does not produce local small, those with 20 candidate locations and 50 demand points;
optimum with respect to any neighborhood, so the resulting medium, with 50 candidate locations and 100 demand points;
solutions can be further improved with a local optimizer. and large, with 200 candidate locations and 400 demand
Specifically, for each solution derived from the combination points. Table I summarizes the following parameters of the
stage, three local optima are found, one for each objective instances generated:
function of the moFLP, respectively. Then, each improved
• m: number of candidate locations to host a facility
solution is evaluated to be included in the RefSet.
• n: number of demand points
• p: number of candidate locations that must be selected
C. Solution Combination Method • r: radius in which a facility is covering a demand point

The solution combination method is responsible for gen- We refer the reader to [10] for a more detailed description
erating new solutions in each iteration of the Scatter Search on the instance structure.
algorithm by combining two or more solutions that are already
in the RefSet. The combination can be performed following TABLE I
different strategies, from genetic operators to the generation PARAMETERS SETTING FOR THE INSTANCES .
of paths between solutions.
In this work we propose using Path Relinking (PR) [6], Parameter Small Medium Large
[7] as a combination method, which has been successfully m 20 50 200
applied in several recent works [1], [3]. Given an initial and a n 50 100 400
p 5 10 15
guiding solution, si and sg , respectively, PR constructs a path r 20 15 10
of solutions that starts in si and finishes in sg . The objective of
PR is iteratively transform the initial solution into the guiding
one. The transformation is achieved by adding attributes of All the algorithms proposed in this work have been imple-
the guiding solution into the initial one while removing those mented using Java 8 and the experiments were performed on
attributes of the initial solution that are not present in the an Intel Core i7 920 (2.67 GHz) with 8 GB RAM. It is worth
guiding one, stopping when si becomes sg . mentioning that the previous algorithm has been also executed
There exist several strategies for combining solutions in the in the same computer in order to have a fair comparison.
context of Path Relinking: Random Path Relinking, Greedy Table II shows average results of both the Scatter Search
Path Relinking, or Greedy Randomized Path Relinking, among with Path Relinking algorithm proposed (SSPR) and the best
others. Most of the greedy variants require the exploration previous method (ITER-FLOC) the 20 instances. Regarding
of all the alternative solutions in each step of the path, the multi-objective nature of the problem under consideration,
in order to select the most promising solution to continue we have considered using the following metrics: coverage, C;
the path. However, these strategies are usually very time hypervolume, HV; epsilon indicator, Eps; and CPU time. Re-
consuming, increasing the required computing time to execute sults in Table II shows the superiority of the SSPR algorithm.
the algorithm. We have selected the Random Path Relinking If we focus on the coverage metric, it can be hold that
variant in order to accelerate the proposed algorithm, thus the proportion of solutions covered by the SSPR algorithm is
increasing the diversification of the search. larger than the proportion of solution covered by the ITER-
Starting from the initial solution si , Random Path Relinking FLOC algorithm. Furthermore, the SSPR scales better thatn
generates a random solution in the neighborhood defined in the ITER-FLOC algorithm, as it can be seen with the increase
Section III-B that inserts a new candidate location which is of the solutions covered by SSPR when increasing the size of
already in the guiding solution, removing one of the candidate the instance, achieving a 100% of coverage when analyzing
locations currently in si that does not belongs to sg . Notice the set of large instances.
that after a certain number of iterations, the initial solution Regarding the hypervolume (larger values are better) and the
would become the guiding one, since in each iteration the epsilon indicator (smaller values are better), we can conclude
initial solution will have an additional candidate location in that SSPR consistently obtains better results thatn the ITER-
common with sg . FLOC algorithm. Again, the larger the instance set, the better

540
XIII Congreso Español en Metaheurı́sticas y Algoritmos Evolutivos y Bioinspirados

the results of SSPR when compared against ITER-FLOC. This R EFERENCES


behavior suggests that SSPR is a more adequate algorithm for [1] V. Campos, R. Martı́, J. Sánchez-Oro, A. Duarte, “GRASP with path
real-life problems with a large number of candidate locations relinking for the orienteering problem”, Journal of the Operational
and demand points. Research Society, vol. 65, pp. 1800–1813, 2014.
[2] R. Church, and C.R. Velle, “The maximal covering location problem,”
Finally, if we consider the computing time, we can see that Papers in Regional Science, vol. 32, pp. 101–118,1974.
ITER-FLOC is equivalent or even faster when considering [3] A. Duarte, J. Sánchez-Oro, M.G.C. Resende, F. Glover, R. Martı́,
small or medium instances, but the performance does not scale “Greedy randomized adaptive search procedure with exterior path re-
linking for differential dispersion minimization”, Information Sciences,
good with the size of the instance. Therefore, when solving the vol. 296, pp. 46–60, 2015.
largest instances the proposed SSPR algorithm is considerably [4] T. Feo, M.G.C. Resende. “A probabilistic heuristic for a computationally
faster than the ITER-FLOC approach. difficult set covering problem”, Operations Research Letters, vol. 8, pp.
67–71, 1989.
[5] F. Glover, “Heuristics for integer programming using surrogate con-
TABLE II straints,” Decision Sciences, vol. 8, pp. 156–166, 1977.
AVERAGE RESULTS . [6] F. Glover“Tabu search and adaptive memory programming – advances,
applications, and challenges,” Kluwer Academic Publishers, 1996.
[7] F. Glover, and M. Laguna, “Tabu Search,” Kluwer Academic Publishers,
C(SSPR,ITER-FLOC) C(ITER-FLOC,SSPR) 1997.
Small 0.61 0.17 [8] S.L. Hakimi, “Optimum Locations of Switching Centers and the Abso-
Medium 0.82 0.00 lute Centers and Medians of a Graph,” Operations Research, vol. 12,
Large 1.00 0.00 pp. 450–459, 1964.
[9] S.L. Hakimi, “Optimum Distribution of Switching Centers in a Com-
HV(SSPR) HV(ITER-FLOC) munication Network and Some Related Graph Theoretic Problems,”
Operations Research, vol. 13, pp. 462–475, 1965.
Small 0.28 0.07 [10] M. Karatas, and E. Yakc, “An iterative solution approach to a multi-
Medium 0.52 0.12 objective facility location problem,” Applied Soft Computing, vol. 62,
Large 0.81 0.20 pp. 272–287, 2018.
Eps(SSPR) Eps(ITER-FLOC) [11] R. Martı́, M. Laguna, and F. Glover. “Principles of scatter search,”
European Journal of Operational Research, vol. 169, pp. 359–372, 2006.
Small 0.44 0.78 [12] J. Sánchez-Oro, M. Laguna, R. Martı́, and A. Duarte. “Scatter Search
Medium 0.14 0.70 for the Bandpass Problem”, Journal of Global Optimization, vol. 66(4),
Large 0.00 0.50 pp. 769–790, 2016
CPU(SSPR) CPU(ITER-FLOC) [13] J. Sánchez-Oro, A. Martı́nez-Gavara, M. Laguna, A. Duarte, and R.
Martı́. “Variable neighborhood scatter search for the incremental graph
Small 6.41 7.25 drawing problem”, Computational Optimization and Applications, vol.
Medium 72.66 19.74 68(3), pp. 775–797, 2017
Large 1920.53 5920.34 [14] J.J. Sylvester, “A Question in the Geometry of Situation,” Quarterly
Journal of Pure and Applied Mathematics, vol. 1, 1857.

V. C ONCLUSIONS
A population-based metaheuristic with a method for com-
bining solutions have been proposed for a multi-objective facil-
ity location problem (mo-FLP) which considers three different
objectives of interest in real-life problems: to minimize the
average distance between demands and their nearest facilities,
to maximize the total number of demand points covered, and
to minimize the maximum distance between demand points
and their nearest facilities.
The computational experiments shows how Scatter Search
with Path Relinking is a suitable algorithm for solving large
scale instances, performing better in both quality and comput-
ing time than the best previous algorithm found in the state
of the art. The experiments have been performed in the same
computer in order to have comparable results, concluding that
SSPR outperforms the best previous method considering all
the metrics presented.
ACKNOWLEDGMENT
J. Sánchez-Oro is supported by the Spanish Ministry of
“Economı́a y Competitividad”, Grant Refs. TIN2015-65460-
C2-2-P and TIN2014-54806-R.
A.D. López-Sánchez and A.G. Hernández-Dı́az acknowl-
edge support from the Spanish Ministry of Science and Inno-
vation through Project ECO2016-76567-C4-1-R.

541
XIII Congreso Español
de Metaheurísticas,
Algoritmos Evolutivos y
Bioinspirados
(XIII MAEB)

MAEB 2.2:
SCATTER SEARCH Y VNS
XIII Congreso Español en Metaheurı́sticas y Algoritmos Evolutivos y Bioinspirados

Encontrando grafos bipartitos completos mediante


Búsqueda de Vecindad Variable
Juan David Quintana Jesús Sánchez-Oro Abraham Duarte
Dept. Computer Sciences Dept. Computer Sciences Dept. Computer Sciences
Universidad Rey Juan Carlos Universidad Rey Juan Carlos Universidad Rey Juan Carlos
Madrid, España Madrid, España Madrid, España
juandavid.quintana@urjc.es jesus.sanchezoro@ujrc.es abraham.duarte@urjc.es

Resumen—El Problema del Máximo Biclique Balanceado, se representan con una lı́nea continua, mientras que aquellas
o Maximum Balanced Biclique Problem (MBBP), consiste en con un extremo fuera de la solución se representan con
encontrar el biclique de tamaño máximo inducido por un grafo una lı́nea discontinua. Obsérvese que no es posible insertar
bipartito no completo. Se tiene la restricción adicional de que
tanto el tamaño del grafo de partida como el biclique inducido nuevos vértices en la solución, ya que en dicho caso el grafo
tienen el mismo número de vértices en cada una de sus capas, por bipartito inducido resultante no serı́a un biclique balanceado.
lo tanto se dice que son balanceados. Algunas de sus aplicaciones Por ejemplo, no es posible añadir los vértices E o H porque no
se dan en el diseño de circuitos en integración a gran escala son adyacentes a los vértices B y A, respectivamente. Además,
(VLSI) o el diseño de sistemas nanoelectrónicos, entre otras. Se ha no es posible añadir vértices en la capa L1 ya que el biclique
demostrado que este problema de optimización combinatoria es
NP-Duro. En la literatura se han propuesto diversas heurı́sticas inducido no serı́a balanceado (i.e., |L1 | =
6 |R1 |).
para solucionarlo, generalmente basadas en la eliminación de La figura 1(c) muestra una solución B2 (L2 , R2 , E2 ) de
vértices, y más recientemente se ha propuesto un algoritmo mejor calidad, ya que tiene 3 vértices en cada capa. En
evolutivo que tiene los mejores resultados en la literatura. En concreto, L2 = {B, C, D}, y R2 = {F, G, H}. De nuevo, no es
este trabajo se propone el uso de la metodologı́a RVNS para posible añadir más vértices sin violar la restricción de tener
abordar este problema. Esta elección se justifica en la dı́ficultad
para diseñar una búsqueda local efectiva para este problema. un biclique balanceado.
Index Terms—biclique, Reduced VNS, bipartito. Se ha demostrado que este problema es N P-Duro en varios
trabajos previos [1]–[3]. Algunos resultados teóricos proponen
I. I NTRODUCCI ÓN cotas para el tamaño máximo que la solución óptima puede
alcanzar [4], y se demostrado difı́cil de aproximar dentro de
Sea G(L, R, E) un grafo bipartito balanceado en el que L
un determinado factor [5].
y R son dos conjuntos (o capas) de vértices con la misma
Los grafos biclique han demostrado ser de utilidad en
cardinalidad (i.e., |L| = |R| = n) y E es el conjunto de
varias aplicaciones prácticas, la mayorı́a de ellas en el campo
aristas. Al ser un grafo bipartito, L ∩ R = ∅, una arista solo
de la biologı́a: agrupación de datos de microarrays [6]–
puede conectar un vértice v ∈ L con otro u ∈ R, i.e., ∀(v, u) ∈
[8], optimización de la reconstrucción del arbol filogenético
E v ∈ L∧u ∈ R. Además, definimos un biclique B(L′ R′ , E ′ )
[9], entre otras [10]–[12]. En particular, el MBBP tiene
como el grafo inducido por G, en el que L′ ⊂ L, R′ ⊂ R, de
aplicaciones adicionales en diversos campos: diseño eficiente
forma que todo vértice v ∈ L′ está conectado a todo vértice
de circuitos en integración a gran escala (VLSI) [13], o el
u ∈ R′ . Dicho de otra forma, B es un grafo bipartito completo,
diseño de nuevos sistemas nanoelectrónicos [14]–[16], entre
también llamado biclique.
otras.
Dado un grafo bipartito balanceado G(L, R, E), este trabajo
A pesar de las aplicaciones prácticas del MBBP, no se
se centra en resolver el Problema del Máximo Biclique
han propuesto muchos algoritmos eficientes para solucionarlo,
Balanceado, más conocido como Maximum Balanced Biclique
principalmente debido a la dificultad del problema. Sin
Problem (MBBP) en inglés, que consiste en identificar un
embargo, si del MBBP eliminamos la restricción de que la
biclique balanceado B ⋆ (L′ , R′ , E ′ ) con el mayor número de
solución deba ser balanceada, entonces el problema resultante
vértices por capa. En otras palabras, el objetivo del MBBP es
serı́a resoluble en tiempo polinómico [17], pero la mayorı́a
maximizar la cardinalidad de los conjuntos L′ y R′ .
de las soluciones serı́an desbalanceadas, haciendo que los
La Figura 1 presenta un ejemplo de grafo bipartito con 8
resultados no sean adaptables al problema que estamos
vértices, 13 aristas, y dos posibles soluciones para el MBBP.
considerando.
La figura 1(b) muestra una solución B1 (L1 , R1 , E1 ) con
La mayorı́a de los planteamientos previos siguen un enfoque
dos vértices en cada capa. En este caso, L1 = {A, B}, y
destructivo en el que la solución inicial contiene todos los
R1 = {F, G}. Las aristas que pertenecen al biclique inducido
vértices y la heurı́stica elimina iterativamente vértices en
Este trabajo ha sido financiado parcialmente por el Ministerio de Economı́a L′ y R′ hasta que la solución resultante es factible. Estos
y Competitividad, ref. TIN2015-65460-C2-2-P. algoritmos se diferencian entre sı́ principalmente por el criterio

545
XVIII Conferencia de la Asociación Española para la Inteligencia Artificial

A E A E A E

B F B F B F

C G C G C G

D H D H D H
(a) (b) (c)
Figura 1: 1(a) Grafo bipartito con 8 vértices y 13 aristas, 1(b) una solución factible con 2 vértices en cada capa (A y B en L′ ,
F y G en R′ ) , y 1(c) una solución distinta con 3 vértices en cada capa (B, C y D en L′ , F, G, y H en R′ )

utilizado para elegir los vértices a eliminar. En particular, [14] tanto deterministas como estocásticas (e.g., Basic VNS,
selecciona los vértices de mayor grado, mientras que [15] General VNS).
elimina los de mayor número de vértices de mı́nimo grado Como se menciona en trabajos previos [19], [20], diseñar
en la otra capa. Además, algunos algoritmos han intentado una búsqueda local para el MBBP es una tarea difı́cil
combinar ambos criterios [18], [19]. El mejor algoritmo principalmente por la complejidad de mantener una solución
encontrado en la literatura consiste en un algoritmo evolutivo factible (i.e. un biclique balanceado) tras eliminar o añadir
[20] que propone un nuevo operador de mutación ası́ como una vértices en una solución previa. En otras palabras, el MBBP
nueva busqueda local para mejorar la calidad de las soluciones no es idóneo para proponer métodos de búsqueda local que
generadas. permitan encontrar un óptimo local en relación a una solución
El resto de este artı́culo está organizado de la siguiente determinada. Por lo tanto, este trabajo propone un algoritmo
forma: la Sección II describe la propuesta algorı́tmica para Reduced VNS, que se basa en la exploración aleatoria de las
el MBBP; la Sección III presenta los experimentos realizados vecindades establecidas.
para evaluar la calidad de la propuesta algortimica; y la RVNS es una variante de VNS útil para instancias grandes
Sección IV plantea las conclusiones de esta investigación. en las que la búsqueda local es muy costosa en tiempo, o para
aquellos problemas en los que no es fácil diseñar un método
II. R EDUCED VARIABLE N EIGHBORHOOD S EARCH de búsqueda local.

La Búsqueda de Vecindad Variable (VNS por sus siglas Algoritmo 1 RVNS (B, kmáx , tmáx )
en inglés Variable Neighborhood Search) [21] es una 1: repeat
metaheuristica basada en cambios sistemáticos de vecindad. 2: k←1
Al ser una metaheurı́stica, no garantiza la optimalidad de las 3: while k ≤ kmáx do
soluciones obtenidas, pero se centra en obtener soluciones de 4: B ′ ← Shake(B, k)
alta calidad en un tiempo razonable de cómputo. La constante 5: k ← NeighborhoodChange(B, B ′ , k)
evolución de VNS ha dado lugar a diversas variantes, entre 6: end while
la que podemos destacar Basic VNS, Reduced VNS (RVNS), 7: until CPUTime() ≤ tmáx
Variable Neighborhood Descent (VND) , General VNS, Skewed 8: return B
VNS, Variable Neighborhood Decomposition Search, entre
otras. El algoritmo requiere de dos parámetros de entrada: B,
La mayorı́a de las variantes se diferencian en la forma de una solución factible de partida, que se puede generar
explorar las vecindades establecidas. En particular, Variable aleatoriamente o mediante un procedimiento constructivo más
Neighborhood Decomposition Search realiza una exploración elaborado; y kmáx , la vecindad máxima a explorar.
totalmente determinista del espacio de soluciones, mientras Cada iteración de RVNS empieza desde la vecindad inicial
que la exploración realizada por RVNS es totalmente (paso 2). A continuación, el método explora cada una de las
estocástica. Algunas variantes combinan cambios de vecindad vecindades establecidas (pasos 3-6) de la siguiente forma. En

546
XIII Congreso Español en Metaheurı́sticas y Algoritmos Evolutivos y Bioinspirados

primer lugar, el método genera una solución al azar B ′ en la la solución factible (i.e., la solución es un grafo bipartito
vecindad k de la solución actual B con el método Shake (paso completo). Por lo tanto, en este paso inicial, CLL contiene
4). Luego el método NeighborhoodChange (paso 5) se encarga todos los vértices de L exceptuando al vértice seleccionado v.
de seleccionar la siguiente vecindad a explorar. En particular, Por otra parte, CLR contiene todos los vértices adyacentes a
si la nueva solución B ′ es mejor que la solución de partida B, v en R, ya que de otra forma la solución no serı́a un grafo
entonces se actualiza (B ← B ′ ), y reinicia la búsqueda desde bipartito completo. A continuación, el método añade un vértice
la vecindad inicial (k ← 1). En caso contrario, la búsqueda en la capa R′ y luego en L′ iterativamente, mientras que
continúa con la siguiente vecindad (k ← k + 1). Una iteración queden candidatos en ambas capas (paso 16-19).
de RVNS termina cuando se ha alcanzado la vecindad máxima La selección del vértice siguiente se describe en la función
establecida kmáx . Es importante mencionar que la vecindad UpdateLayer que requiere de tres parámetros: la lista de
máxima utilizada en RVNS es generalmente pequeña debido candidatos desde la que se debe elegir el vértice, CL1 , la
a la naturaleza aleatoria del método Shake, ya que un valor lista de candidatos de la otra capa, CL2 , y el parámetro α que
mayor para kmáx producirı́a resultados equivalentes a reiniciar determina el grado de voracidad / aleatoriedad de la selección.
la búsqueda desde una nueva solución inicial. El método Una función voraz g que evalúa la calidad de un vértice
RVNS se ejecuta hasta que se alcanza un tiempo lı́mite de candidato v debe ser definida. En este trabajo, proponemos
cómputo tmáx . como función el número de vértices adyacentes en la lista de
candidatos de la capa opuesta. Formalmente,
II-A. Procedimiento constructivo
La solución inicial para RVNS puede ser generada al
azar o con un procedimiento constructivo más elaborado. g(v, CL) ← {u ∈ CL : (v, u) ∈ E}
Este trabajo propone un procedimiento constructivo basado
en Greedy Randomized Adaptive Search Procedure (GRASP) El primer paso para seleccionar el vértice siguiente consiste
[22]. Esta metodologı́a considera una función voraz que evalúa en obtener los valores mı́nimo (gmı́n ) y máximo (gmáx ) para la
la importancia de insertar cada vértice en la solución a función voraz (paso 2-3). A continuación, se construye (paso
construir. En el Algoritmo 2 se presenta el pseudocódigo del 5) la lista de candidatos restringida (RCL) con aquellos vértices
procedimiento constructivo propuesto. cuyo valor de la función objetivo sea mayor o igual que el
umbral hallado previamente µ (paso 4). Los valores para el
Algoritmo 2 Construct(G = (L, R, E), α) parámetro α están en el rango 0–1, dónde α = 0 implica
1: function U PDATE L AYER(CL1 , CL2 , α) que el método es totalmente aleatorio, y α = 1 transforma
2: gmı́n ← mı́nv∈CL1 g(v) el algoritmo en completamente voraz. El siguiente vértice se
3: gmáx ← máxv∈CL1 g(v) selecciona al azar de RCL (paso 6), y luego se actualiza cada
4: µ ← gmı́n + α · (gmáx − gmı́n ) lista de candidatos. En particular, CL1 se actualiza mediante
5: RCL ← {v ∈ CL1 ; g(v) ≤ µ} quitar el vértice seleccionado de sı́ mismo, mientras CL2 se
6: v ← Random(RCL) actualiza quitando aquellos vértices que no son adyacentes a
7: CL1 ← CL1 \ {v} v, debido a que no pueden ser elegidos en iteraciones futuras
8: CL2 ← CL2 \ {u ∈ CL2 : (v, u) ∈ / E} sin que la solución se vuelva infactible.
9: return v
10: end function II-B. Shake
11: v ← Random(L) El método Shake es una etapa dentro de la metodologı́a VNS
12: L′ ← {v} diseñada para escapar de óptimos locales encontrados durante
13: CLL ← L \ {v} la fase de búsqueda. Consiste en perturbar aleatoriamente una
14: CLR ← {u ∈ R : (v, u) ∈ E} solución con el objetivo de explorar regiones más amplias en
15: while CLL 6= ∅ and CLR 6= ∅ do el espacio de búsqueda. Esta fase de la metodologı́a VNS se
16: vr ← U PDATE L AYER(CLR , CLL , α) centra en diversificar la búsqueda.
17: R′ ← R ∪ {vr } Dada una vecindad k, el método Shake propuesto en
18: vl ← U PDATE L AYER(CLL , CLR , α) este trabajo elimina k elementos al azar de cada capa. La
19: L′ ← L ∪ {vl } solución resultante es factible pero el valor de función objetivo
20: end while siempre es menor, ya que se reduce el número de vértices
21: return B = (L′ , R′ , {(v, u) v ∈ L′ ∧ u ∈ R′ }) seleccionados.
Teniendo en cuenta las restricciones del problema, si un
El método empieza por seleccionar un vértice al azar de la vértice v se añade a la solución, entonces todos los vértices
capa L (paso 11), insertarlo la capa correspondiente L′ de la en la capa opuesta que no sean adyacentes a v no pueden
solución (paso 12). Entonces, se crean dos listas de candidatos ser añadidos en iteraciones futuras, ya que en dicho caso
(CL), una por cada capa del grafo (paso 13-14). Obsérvese que la solución obtenida no serı́a un biclique. Sin embargo,
ambas listas de candidatos solo contienen aquellos vértices quitar algunos vértices con el método Shake puede permitir
de cada capa que pueden ser seleccionados manteniendo eventualmente que nuevos vértices sean añadidos a la solución

547
XVIII Conferencia de la Asociación Española para la Inteligencia Artificial

(i.e., aquellos que no eran adyacentes a ninguno de los vértices probabilidades p = {85 %, 90 %, 95 %} de que una arista
eliminados). exista en el grafo. Se trata de grafos densamente poblados en
Por lo tanto, proponemos una etapa de reconstrucción que los que falta un porcentaje bajo de aristas para que lleguen a
se ejecuta después de cada Shake. En concreto, la fase de ser completos. Este conjunto de datos se utiliza para comparar
reconstrucción intenta añadir nuevos vértices a la solución, el rendimiento de nuestro algoritmo con el estado del arte. A
aquellos que no eran candidatos factibles antes de ejecutar el parte de las instancias utilizadas para presentar sus resultados,
método Shake. los autores de [20] también facilitan otras instancias generadas
La etapa de reconstrucción siempre mejora o, al menos, con los mismos parámetros, no utilizadas en su artı́culo, y
mantiene la calidad de la solución obtenida tras la llamada que en este trabajo se utilizan para ajustar los parámetros del
al método Shake. Obsérvese que la solución reconstruida solo algoritmo.
supera a la inicial si y solo si la etapa de reconstrucción es En estos experimentos presentamos los siguientes datos: el
capaz de insertar más de k vértices en cada capa. tamaño promedio del biclique balanceado más grande obtenido
La naturaleza aleatoria de este procedimiento hace que sea para el conjunto de datos, Tamaño; el tiempo promedio
difı́cil obtener mejoras en la calidad de la solución. Para de ejecución por instancia, Tiempo (s); el porcentaje de
mitigar este efecto se proponen cuatro variantes del método desviación promedio respecto de la mejor solución obtenido
Shake. Estas se diferencian en cómo se realizan las fases de por instancia, %Desv.; y el número de veces que se encuentra
destrucción y reconstrucción de la solución, cada fase puede la mejor solución para cada instancia, #Mejores.
ser respectivamente aleatoria (R) o voraz (G), con lo que
obtenemos cuatro variantes: RR, RG, GR, GG. La Tabla I III-A. Experimentos preliminares
muestra el comportamiento voraz o aleatorio de cada una de Los experimentos presentados a continuación fueron
las variantes propuestas. Por ejemplo, la variante de Shake GR diseñados para elegir la mejor variante para el algoritmo
realiza una destrucción voraz con una reconstrucción aleatoria. propuesto. Se utilizó un grupo reducido de 6 instancias
representativas, una por cada combinación posible de
Variante Destrucción Reconstrucción parámetros, seleccionadas a partir de las excluidas del
RR Aleatoria Aleatoria experimento final para no sobreajustar el algoritmo. Estas
RG Aleatoria Voraz instancias forman parte de las facilitadas por [20] y han sido
GR Voraz Aleatoria
GG Voraz Voraz generadas al azar con los mismos parámetros n (tamaño) y
p (probabilidad) que aquellas utilizadas en la comparación de
Tabla I: Enumeración de las cuatro variantes de Shake resultados. En el primer experimento se comprueba cuál es
propuestas. el mejor valor de α para el procedimiento constructivo, en
el segundo se comparan cuatro variantes del procedimiento
En la fase de reconstrucción se utiliza el mismo método Shake, y finalmente se examina cuál es el valor más
constructivo que genera la solución inicial, pero modificado conveniente para la vecindad máxima a explorar. Todos los
para ser totalmente aleatorio (α = 0) o totalmente voraz experimentos se han ejecutado iterativamente hasta alcanzar
(α = 1). En la fase de destrucción se plantea un algoritmo, el limite de tiempo establecido, un número de segundos igual
con una estructura similar a la del método constructivo, que al tamaño n de la instancia.
elimina vértices de una solución factible. Para que sea una
destrucción voraz es necesario definir una nueva función α Tamaño Tiempo (s) %Desv. #Mejores
heurı́stica g ′ que puntúe los vértices a eliminar. El valor de 0.25 46.33 375.00 11.57 0
esta función heurı́stica para cada vértice v ∈ S se calculará 0.50 48.33 375.00 7.96 0
0.75 52.00 375.00 0.96 2
por el número de vertices en la otra capa con los que no está rnd 52.50 375.00 0.00 6
conectados.
Tabla II: Comparación del algoritmo constructivo con distintos
III. R ESULTADOS EXPERIMENTALES valores del parámetro α.
En esta sección se presentan dos grupos de experimentos:
los experimentos preliminares, realizados para ajustar los En el primer experimento ejecutamos iterativamente
parámetros del algoritmo propuesto; y el experimento final, únicamente el procedimiento constructivo hasta que se alcanza
diseñado para evaluar la calidad de nuestra propuesta el lı́mite de tiempo para cada instancia y se guarda la
algorı́tmica y compararla con el algoritmo previo de la mejor solución alcanzada en dicho tiempo. Se consideran los
literatura. Todos los algoritmos fueron implementados en Java siguientes valores posibles para el parámetro alfa α = {0.25,
y se ejecutaron en un sistema con una CPU Intel i7 (7660U) 0.50, 0.75,random}. En particular, el valor “random” significa
y 8 GB de RAM, en la máquina virtual de Java 8. que en cada iteración se elige un alfa distinto de forma
Se ha utilizado el mismo conjunto de datos presentado en aleatoria. Los resultados en la Tabla II muestran que los
[20], facilitado por dichos autores, que consiste en 30 grafos mejores resultados se obtienen cuando se elige aleatoriamente
bipartitos balanceados con tamaños n = {250, 500}, donde n el parámetro alfa en cada iteración. En este caso, se obtiene un
representa el número de vértices en cada capa; y con diferentes biclique balanceado de tamaño 52.50 en promedio y, además,

548
XIII Congreso Español en Metaheurı́sticas y Algoritmos Evolutivos y Bioinspirados

alcanza la mejor solución hallada en este experimento en todas del tamaño (n) de las instancias. En la Tabla V se puede ver
las 6 instancias. Por consiguiente, tanto en los experimentos que nuestros resultados son muy cercanos al algoritmo previo
sucesivos como en el final, se utilizará este valor de alfa para respecto a la calidad de las soluciones obtenidas, está a menos
el constructivo inicial que forma parte de nuestra propuesta de de un vértice de distancia en promedio, pero tiene un tiempo
RVNS. de ejecución que se aproxima a la mitad del tiempo requerido
por el algoritmo memético.
Shake Tamaño Tiempo (s) %Desv. #Mejores
RR 48.83 375.00 10.21 0 Tamaño Tiempo (s) %Desv. #Mejores
RG 54.33 375.00 0.00 6
GR 49.50 375.00 8.95 0 EA/SM 55.10 2075.11 0.04 29
GG 53.17 375.00 2.37 1 RVNS 54.33 1125.00 1.71 10

Tabla III: Comparación del algoritmo RVNS con las cuatro Tabla V: Comparación del RVNS con el algoritmo evolutivo
variantes del método Shake. Se ha fijado la vecindad máxima EA/SM encontrado en la literatura.
en Kmax = 50 %.
IV. C ONCLUSIONES
El siguiente experimento está diseñado para elegir la mejor
variante del método Shake. Se ha fijado la vecindad máxima En este trabajo se ha propuesto el uso de la metodologı́a
del algoritmo RVNS en Kmax = 50 % y se comparan las RVNS para buscar soluciones eficientes para el MBBP.
cuatro variantes propuestas para el método Shake. En este Se ha constatado que en este problema es difı́cil plantear
experimento se observa en la Tabla III que la variante RG, es una búsqueda local efectiva y debido a ello se ha elegido
decir, destrucción aleatoria con reconstrucción voraz, alcanza una variante de VNS que explora aleatoriamente una
los mejores resultados. Esta obtiene un biclique balanceado vecindad predefinida. Se ha conseguido plantear un algoritmo
con un tamaño de 54.33 vértices en promedio y, además, competitivo en calidad respecto al actual estado del arte que
también obtiene las 6 mejores soluciones de este experimento. utiliza aproximadamente la mitad del tiempo que este, por lo
que todavı́a es un enfoque prometedor que permite explorar en
Kmax Tamaño Tiempo (s) %Desv. #Mejores un futuro otras técnicas complementarias para mejorar estos
10 % 53.17 375.00 2.37 1 resultados.
20 % 53.33 375.00 1.85 2
30 % 53.83 375.00 0.98 3 R EFERENCIAS
40 % 53.83 375.00 0.87 3
50 % 54.33 375.00 0.00 6 [1] M. R. Garey and D. S. Johnson, Computers and Intractability: A Guide
to the Theory of NP-Completeness. New York: Freeman, 1979.
Tabla IV: Comparación del algoritmo RVNS para diferentes [2] D. S. Johnson, “The np-completeness column: An ongoing guide.” J.
valores de la vecindad máxima Kmax . Algorithms, vol. 13, no. 3, pp. 502–524, 1992.
[3] N. Alon, R. A. Duke, H. Lefmann, V. Rödl, and R. Yuster, “The
algorithmic aspects of the regularity lemma,” J. Algorithms, vol. 16,
En el último experimento preliminar queremos evaluar no. 1, pp. 80–109, 1994.
la influencia que tiene el tamaño máximo de la vecindad [4] M. Dawande, P. Keskinocak, J. M. Swaminathan, and S. Tayur, “On
bipartite and multipartite clique problems,” Journal of Algorithms,
kmax sobre el algoritmo propuesto. Se utiliza la mejor vol. 41, no. 2, pp. 388 – 403, 2001.
configuración hallada en los experimentos anteriores, es decir, [5] U. Feige and S. Kogan, “Hardness of approximation of the balanced
una construcción incial con un alfa aleatorio en cada iteración complete bipartite subgraph problem,” Tech. Rep., 2004.
[6] Y. Cheng and G. M. Church, “Biclustering of expression data,” in Proc.
y el método Shake que realiza primero una destrucción of the 8th ISMB. AAAI Press, 2000, pp. 93–103.
aleatoria y luego una reconstrucción voraz (RG); y se ejecuta [7] A. Tanay, R. Sharan, and R. Shamir, “Discovering statistically significant
el algoritmo con diferentes tamaños para la vecindad máxima biclusters in gene expression data.” in ISMB, 2002, pp. 136–144.
[8] H. Wang, W. W. 0010, J. Yang, and P. S. Yu, “Clustering by pattern
Kmax = {10 %, 20 %, 30 %, 40 %, 50 %}. En este experimento similarity in large data sets.” in SIGMOD Conference, M. J. Franklin,
se puede ver que, en general, expandir el tamaño de la B. Moon, and A. Ailamaki, Eds. ACM, 2002, pp. 394–405.
vecindad permite que el algoritmo alcance mejores soluciones, [9] M. J. Sanderson, A. C. Driskell, R. H. Ree, O. Eulenstein, and
S. Langley, “Obtaining maximal concatenated phylogenetic data sets
disminuyendo en consecuencia la desviación. Se toma como from large sequence databases,” Molecular Biology and Evolution,
mejor vecindad Kmax = 50 % con la que se han obtenido los vol. 20, no. 7, pp. 1036–1042, 2003.
mejores resultados de este experimento. [10] E. J. Chesler and M. A. Langston, “Combinatorial genetic regulatory
network analysis tools for high throughput transcriptomic data.” in
Systems Biology and Regulatory Genomics, ser. Lecture Notes in
III-B. Experimento final Computer Science, E. Eskin, T. Ideker, B. J. Raphael, and C. T.
En el experimento final se presenta una comparación con Workman, Eds., vol. 4023. Springer, 2005, pp. 150–165.
[11] E. J. Baker, J. J. Jay, V. M. Philip, Y. Zhang, Z. Li, R. Kirova, M. A.
el algoritmo memético [20] encontrado en la literatura previa. Langston, and E. J. Chesler, “Ontological discovery environment: A
La comparación se realiza utilizando el mismo conjunto de 30 system for integrating gene–phenotype associations,” Genomics, vol. 94,
instancias que se han utilizado en dicho trabajo. El algoritmo no. 6, pp. 377 – 387, 2009.
[12] R. A. Mushlin, A. Kershenbaum, S. T. Gallagher, and T. R. Rebbeck,
RVNS se ejecuta por iteraciones hasta que se llega a un tiempo “A graph-theoretical approach for pattern discovery in epidemiological
lı́mite, en este caso es un tiempo en segundos igual al triple research.” IBM Systems Journal, vol. 46, no. 1, pp. 135–150, 2007.

549
XVIII Conferencia de la Asociación Española para la Inteligencia Artificial

[13] S. S. Ravi and E. L. Lloyd, “The complexity of near-optimal


programmable logic array folding.” SIAM J. Comput., vol. 17, no. 4,
pp. 696–710, 1988.
[14] M. B. Tahoori, “Application-independent defect tolerance of
reconfigurable nanoarchitectures,” JETC, vol. 2, no. 3, pp. 197–
218, 2006.
[15] A. A. Al-Yamani, S. Ramsundar, and D. K. Pradhan, “A defect tolerance
scheme for nanotechnology circuits.” IEEE Trans. on Circuits and
Systems, vol. 54-I, no. 11, pp. 2402–2409, 2007.
[16] M. B. Tahoori, “Low-overhead defect tolerance in crossbar
nanoarchitectures.” JETC, vol. 5, no. 2, 2009.
[17] M. Yannakakis, “Node-deletion problems on bipartite graphs.” SIAM J.
Comput., vol. 10, no. 2, pp. 310–327, 1981.
[18] B. Yuan and B. Li, “A low time complexity defect-tolerance algorithm
for nanoelectronic crossbar,” in International Conference on Information
Science and Technology, 2011, pp. 143–148.
[19] ——, “A fast extraction algorithm for defect-free subcrossbar in
nanoelectronic crossbar,” ACM Journal on Emerging Technologies in
Computing Systems (JETC), vol. 10, no. 3, p. 25, 2014.
[20] B. Yuan, B. Li, H. Chen, and X. Yao, “A new evolutionary algorithm
with structure mutation for the maximum balanced biclique problem,”
IEEE Trans. Cybernetics, vol. 45, no. 5, pp. 1040–1053, 2015.
[21] P. Hansen and N. Mladenović, Variable Neighborhood Search. Boston,
MA: Springer US, 2014, pp. 313–337.
[22] T. A. Feo and M. G. Resende, “Greedy randomized adaptive search
procedures,” Journal of global optimization, vol. 6, no. 2, pp. 109–133,
1995.

550
XIII Congreso Español en Metaheurı́sticas y Algoritmos Evolutivos y Bioinspirados

Búsqueda de Vecindad Variable para el


problema de la agrupación y recogida de
pedidos online en almacenes logísticos
Sergio Gil-Borrás, Abraham Duarte, Antonio Alonso-Ayuso y Eduardo G. Pardo

almacenamiento y la recogida de las mismas cuando se recibe


Resumen—En este trabajo se presenta la adaptación de un un pedido. En este último contexto, es donde se enmarca el
algoritmo de Búsqueda de Vecindad Variable Básica al problema presente trabajo. En concreto, se estudia cómo hacer eficiente
de agrupación y recogida de pedidos online en almacenes la recogida de pedidos online que llegan al almacén. Existen
logísticos. La recogida de pedidos en almacenes se ha convertido, diferentes variantes de este problema, en función de factores
en la actualidad, en una importante tarea operacional como parte
tales como: el número de personas recogiendo los pedidos
de la cadena de suministro. En particular, debido a los costes
derivados de esta actividad se ha tornado necesario tratar de simultáneamente; si los pedidos tienen o no fecha límite de
optimizar el proceso de recogida, de modo que los productos entrega; e incluso en función de la estructura concreta de los
asociados a los pedidos sean entregados de forma eficiente. Existen almacenes considerados (varios bloques de estanterías, número
diferentes políticas de recogida, entre las que destacan: (i) la de pasillos paralelos, existencia de pasillos diagonales, etc.).
recogida de pedidos directa, es decir, cada pedido que llega al
almacén es recogido directamente por un trabajador en orden de El problema que se aborda aquí es el denominado “Online
llegada; y (ii) la recogida por lotes, en la que varios pedidos son Order Batching Problem” (OOBP). Este problema consiste en
agrupados en un mismo lote y asignados a un trabajador, para ser determinar el orden en el que se recogen los pedidos que van
recogidos simultáneamente. En este trabajo se aborda una
llegando al almacén de manera constante, así como la ruta
variante del problema de recogida de pedidos, basada en la política
de agrupación en lotes. En concreto, la variante abordada tiene en necesaria para recogerlos. Para ello, se conforman una serie de
consideración que los pedidos llegan online al almacén, es decir, lotes de recogida, formados por un conjunto de pedidos, con un
que no están todos disponibles al comienzo del turno de recogida, tamaño máximo por lote. En este caso, cada uno de los lotes
sino que van llegando a medida que la jornada de trabajo avanza. será recogido por un único trabajador. El objetivo consiste en
La función objetivo consiste en minimizar el tiempo máximo que minimizar el tiempo máximo que transcurre desde que un
un pedido permanece en el sistema. pedido entra en el almacén hasta que este ha sido procesado
para su envío. Este tiempo es comúnmente denominado
Palabras clave— Búsqueda de Vecindad Variable, Agrupación en “makespan” en la literatura asociada a los procesos industriales.
lotes, Heurísticas, Online Order Batching Problem. El tiempo en el que un pedido está en el almacén es, en realidad,
la suma de dos tiempos. Por un lado, el tiempo de procesado del
I. INTRODUCIÓN lote (compuesto a su vez por lo que tarda en generarse el lote y

E n los últimos años las compras a través de Internet se han


popularizado en la sociedad. Derivado de esto, ha surgido
la necesidad de mejorar los procesos que se producen
por el tiempo de espera hasta que este lote pase a ser recogido).
Y, por otro lado, el tiempo que se tarda en recoger todo el lote
por los pasillos del almacén y llevarse a la zona de entrega. Para
dentro de los almacenes logísticos, para llevar a cabo una rápida este último proceso, la recogida de artículos, se emplean
y eficaz gestión de los pedidos, así como una reducción de algoritmos que establecen una ruta dentro del almacén. En
costes de procesamiento de los mismos. Esto ha motivado el concreto, en este trabajo se han repasado tres de los algoritmos
estudio de diferentes problemas que se producen dentro de este heurísticos más conocidos en la literatura, como son S-Shape
contexto, tan demandado por empresas de distribución. Entre [1], Largest-Gap [2] y Combined [3] [4], que se repasarán
los problemas que surgen, se pueden encontrar, entre otros, detalladamente en la Sección III.
problemas relacionados con la recepción de mercancías, su
En este trabajo se han empleado almacenes con dos pasillos
trasversales, uno superior y otro inferior, y un conjunto variable
Sergio Gil-Borrás, Universidad Politécnica de Madrid. Ctra. Valencia, Km. de pasillos paralelos que los unen, donde se colocan los
7, 28031, Madrid, España, (e-mail: sergio.gil.borras@alumnos.upm.es). productos en columnas de igual tamaño, a ambos lados de cada
Abraham Duarte, Universidad Rey Juan Carlos. C/Tulipán s/n, 28933,
Madrid, España, (e-mail: abraham.duarte@urjc.es). pasillo paralelo. El número de pasillos y las dimensiones de la
Antonio Alonso-Ayuso, Universidad Rey Juan Carlos. C/Tulipán s/n, sala, así como de las estanterías, varía según la instancia
28933, Madrid, España, (e-mail: antonio.alonso@urjc.es). seleccionada. En la Fig. 1 se puede ver un ejemplo de este tipo
Eduardo G. Pardo, Universidad Politécnica de Madrid. Ctra. Valencia, Km. de almacén con dos pasillos transversales y cinco pasillos
7, 28031, Madrid, España, (e-mail: eduardo.pardo@upm.es).
paralelos. Cada pasillo paralelo tiene nueve posiciones de
recogida a cada uno de los lados, representadas por pequeños

551
XVIII Conferencia de la Asociación Española para la Inteligencia Artificial

cuadrados. El almacén mostrado tiene, por lo tanto, un total de Sebastián Henn en su artículo del 2012, si bien no se realiza una
90 posiciones de recogida. Se considera que en cada posición comparación directa entre ambos trabajos.
de recogida se almacena únicamente un posible producto. No
se consideran, por lo tanto, múltiples alturas en cada posición Sobre otras variantes del problema, íntimamente relacionadas,
de recogida. En el pasillo transversal inferior se sitúa, además, destaca la publicación en estos últimos años del trabajo
el depósito, que será el punto de partida para las rutas de presentado por Rubrico en [11] donde la recogida de los
recogida, así como el punto de entrega de los productos pedidos se hace por múltiples trabajadores (habitualmente
recogidos en cada ruta. Este depósito aparece posicionado en el denominados pickers) en lugar de únicamente por uno, tal y
centro del pasillo, si bien existen instancias en las que el como se realiza en el problema tratado en este documento. En
depósito se encuentra en uno de los extremos del mismo. este caso, Rubrico propone dos variaciones de un “Incremental
static scheduling scheme algorithm”, que los autores
denominan “Steepest descent insertion” y “On multistage
rescheduling”. En este caso, los autores utilizan un conjunto de
instancias generadas por ellos mismos, y se compara con el
“G66 Listing algorithm”, el cual es una extensión del algoritmo
“Graham’s list scheduling algorithm” [12]. También se realiza
una comparación con el denominado “Aspnes’93 algorithm”
[13].

Otra variante interesante del problema, publicada en 2016 [14],


consiste en añadir una restricción de fecha/hora límite de
entrega a cada pedido y, además, la recogida de los pedidos
también se realiza con múltiples pickers. El algoritmo que los
autores proponen es un algoritmo basado en reglas para
preprocesar los pedidos antes de usar el algoritmo de
Fig. 1 – Estructura del almacén agrupamiento de pedidos en lotes. Con esta estrategia, los
autores consiguieron mejorar los resultados. En su caso, los
El resto del artículo está estructurado de la siguiente forma: en algoritmos que usan para compararse son los “Seed algorithms”
la Sección II se repasa el estado del arte del problema abordado. [15] y el “Recalculation saving algorithms” [16]. Las instancias
En la Sección III se describen los algoritmos de enrutamiento utilizadas en este artículo siguen siendo las mismas instancias
más relevantes de la literatura. En la Sección IV se presentan que introdujo Sebastián Henn en [5].
los algoritmos heurísticos de agrupación propuestos, basados en
la metodología de Búsqueda de Vecindad Variable. En la
III. ENRUTAMIENTO
Sección V se muestran algunos resultados preliminares
obtenidos y los conjuntos de instancias empleados. Por último, Los algoritmos de enrutamiento son los encargados de
en la Sección VI se exponen las conclusiones de este trabajo. decidir el camino que seguirá el trabajador por el almacén para
recoger todos los pedidos incluidos en un mismo lote. El
II. ESTADO DEL ARTE camino comenzará en el depósito que está marcado en las
Entre los últimos artículos publicados que se recogen en la siguientes figuras como “D” (del término en inglés depot). El
literatura, relativos a esta familia de problemas de optimización, camino finaliza en el mismo depósito, una vez que se han
destaca el artículo de S. Henn en 2012 [5], donde los autores recogido todos los elementos de un mismo lote. Al igual que
proponen un algoritmo basado en la metaheurística “Iterated otros problemas de enrutamiento, este problema de
Local Search” (ILS) [6] para abordar el problema. Este optimización ha sido ampliamente trabajado con anterioridad,
algoritmo está basado en el principio de búsqueda local y, en existiendo en la literatura algoritmos heurísticos,
este artículo, se compara el algoritmo propuesto con las técnicas metaheurísticos y exactos para esta variante concreta. No
heurísticas clásicas de “First Come, First Served” (FCFS) y el obstante, los algoritmos de enrutamiento elegidos para este
método de “Clarke and Wright” (C&W) [7]. trabajo, y que se repasan a continuación, son algoritmos
heurísticos. Estos algoritmos, aunque generan soluciones con
Más recientemente, en el año 2015, Ricardo Pérez-Rodríguez recorridos ligeramente más largos que los algoritmos exactos o
publicó un artículo [8] resolviendo también esta variante del que los algoritmos metaheurísticos, son más rápidos a la hora
problema. En este artículo, los autores proponen un algoritmo de computar una solución. Además, en términos generales, el
basado en la estimación continua de la distribución recorrido que ofrecen suele ser de alta calidad y más
(denominado OBCEDA por sus siglas en inglés) que a su vez comprensible por parte de los empleados del almacén.
está basado en los bien conocidos Algoritmos de la Estimación
de la Distribución (EDA) [9]. En este trabajo, se compara la
En la Fig. 2 se puede ver una ilustración de la estrategia de
propuesta realizada con un algoritmo genético y con un
enrutamiento denominada S-Shape, también conocida en
algoritmo basado en la metaheurística “Tabu-Search” [10]. En
algunas referencias como estrategia Trasversal. Esta estrategia
este caso también se usan las mismas instancias que usa
consiste en recorrer completamente todos los pasillos paralelos
que contengan ítems que recoger. A excepción del último

552
XIII Congreso Español en Metaheurı́sticas y Algoritmos Evolutivos y Bioinspirados

pasillo con ítems, que dependerá de la posición del recogedor


cuando deba entrar en dicho pasillo. En el caso que se acceda a
él desde el pasillo trasversal inferior, entonces se recorrerá el
pasillo únicamente hasta llegar al último ítem a recoger del
pasillo y luego, el recogedor dará media vuelta para recorrer ese
mismo pasillo de vuelta hasta llegar de nuevo al pasillo
trasversal inferior y, posteriormente, volver al depósito para
entregar las mercancías. No obstante, en el caso de que el picker
se encuentre en el pasillo transversal superior, en el momento
de entrar en el último pasillo, entonces este se recorrerá
completamente, volviendo al pasillo transversal inferior, que
contiene el depósito, para la entrega de mercancías. En la Fig. Fig. 3 – Recorrido basado en Largest Gap1
2, están representados con color compacto negro los puntos de
recogida de los ítems de un mismo lote. En la estrategia Combined, para recorrer cada pasillo paralelo
se evalúa qué recorrido es más corto de hacer para recoger todos
los ítems de un mismo pasillo, si hacer una estrategia S-Shape
o si hacer una estrategia Largest-Gap. De este modo, a medida
que se va avanzando se toma la mejor decisión para cada
pasillo. De manera global, se puede afirmar que los resultados
obtenidos con esta estrategia son mejores que aquellos
obtenidos aplicando las anteriores estrategias expuestas de
manera independiente. En la Fig. 4, se presenta un ejemplo de
un recorrido empleando la estrategia Combined, para la misma
instancia representada en la Fig. 2 y en la Fig. 3.

Fig. 2 – Recorrido basado en S-shape1

Análogamente, en la Fig. 2, se puede ver la estrategia de


enrutamiento denominada Largest-Gap. En esta estrategia solo
se recorrerán completamente el primer y último pasillo paralelo
con ítems. El resto de pasillos paralelos solo se recorrerán, en
el caso que tenga ítems a recoger. Además, el tramo de pasillo
a recorrer será el comprendido entre el pasillo transversal del
que se parta (inferior o superior según el caso) y el denominado
“largest-gap”. Este término se utiliza para referirse al espacio
más grande que hay entre cada par de ítems consecutivos en un Fig. 4 – Recorrido basado en Combined1
mismo pasillo. Una vez alcanzado el largest-gap, el operario
encargado de la recogida debe dar media vuelta sobre sus pasos
IV. AGRUPAMIENTO
y volver al pasillo transversal del que partía. En el caso de que
quedasen ítems por recoger (que se encuentren más allá del Para abordar el problema del agrupamiento de pedidos en lotes,
largest-gap) estos serán recogidos en la ruta de vuelta desde el se propone la combinación de dos algoritmos: un algoritmo
pasillo transversal contrario. Por lo tanto, desde el pasillo constructivo voraz y una metaheurística, como método de
trasversal superior se accederá solo a recoger los ítems que se mejora de la solución inicial formada por el constructivo.
encuentran en la zona situada antes del largest-gap, en la mitad
superior de los pasillos paralelos. De manera similar, desde el El método constructivo ordena los pedidos en función del orden
pasillo trasversal inferior solo se recogerán los ítems que se de llegada y parte de un lote vacío. A continuación, toma el
encuentran entre el pasillo transversal inferior y la última primer pedido según el orden establecido y trata de añadirlo al
posición de un ítem dentro del pasillo paralelo, antes del último lote disponible (en el caso inicial, el lote vacío). Cuando
denominado largest-gap. este lote no tiene espacio suficiente crea un nuevo lote. Este
proceso se repite hasta que todos los pedidos han sido asignados
Por último, en la Fig. 3, se puede ver la estrategia denominada a un lote. En lo sucesivo se denominará a este método
Combined. En esta estrategia se combinan las técnicas de las constructivo como First-Come-First-Serve (FCFS). Se propone
dos estrategias anteriormente explicadas. también una variante de este método consistente en tratar de
añadir el siguiente pedido en el orden establecido a cada uno de
1. La Fig. 2, Fig. 3 y Fig. 4 han sido obtenidas de la página web de la
los lotes previos (no solo en el último) intentando, de ese modo,
Universidad de Rotterdam: https://www.erim.eur.nl/material- completar el espacio vacío en los lotes. A este método se le
handling-forum/research-education/tools/calc-order-picking- denominará en lo sucesivo como First-Come-First-Serve
time/what-to-do/routing-strategies/, el día 13 Julio de 2018. Completo (FCFS-Completo).

553
XVIII Conferencia de la Asociación Española para la Inteligencia Artificial

Además de los métodos constructivos anteriormente descritos,


se propone la utilización de un método basado en la ALGORITMO II
FUNCIÓN PRIMERAMEJORA
metaheurística Búsqueda de Vecindad Variable (VNS) [17].
VNS es un algoritmo metaheurístico que ayuda a resolver Función PrimeraMejora(x)
problemas complejos tanto de optimización combinatoria como 1: repeat
de optimización global. En concreto, partiendo de una solución 2: x' ← x;
inicial, intenta mejorarla visitando distintos vecindarios. 3: i←0;
Mediante la utilización de una búsqueda local explora, en cada 4: repeat
vecindario, las posibles soluciones prometedoras, obteniendo 5: i←i+1
un óptimo local en cada uno de ellos. 6: x←argmin{ f (x), f (x^i)}, x^i ∈ N(x)
7: until ( f (x) < f (x^i) or i = |N(x)|)
Existen diferentes variantes dentro de la metodología VNS. En 8: until ( f (x) ≥ f (x'))
este trabajo, se ha escogido la variante denominada “Búsqueda 9: return x
de Vecindad Variable Básica” (BVNS, del inglés Basic
Variable Neighborhood Search). El algoritmo BVNS se basa El método encargado de realizar una perturbación de la solución
en tres métodos: un método consistente en una búsqueda local (denominado Shake) se utiliza para escapar del óptimo local
para alcanzar un óptimo local en un vecindario dado; un método actual mediante el movimiento a una nueva vecindad. En este
de perturbación de la solución y un método que determina si caso, el método de perturbación se basa en movimientos de
debe o no cambiarse la vecindad a explorar. En Algoritmo I se intercambio de pedidos. Es decir, se toman dos pedidos de dos
presenta el pseudocódigo del método BVNS. lotes distintos, al azar, y se intercambian, siempre y cuando al
ALGORITMO I
realizar el intercambio la solución continúe siendo factible (no
FUNCIÓN BVNS se sobrepase la capacidad de los lotes involucrados). Este
Función BVNS (x, k_max, t_max); mecanismo se aplica tantas veces como indique la variable k.
1: repeat Por último, se incluye un mecanismo para determinar si se debe
2: k ← 1; explorar una vecindad de mayor tamaño, o bien se deben
3: repeat explorar de nuevo vecindades próximas a la que se acaba de
4: x' ←Shake(x, k) /* Perturbación */; explorar. Este mecanismo se implementa en el método
5: x'' ← PrimeraMejora (x') /* Búsqueda local */; CambioVecindad, recogido en el pseudocódigo de Algoritmo
6: x← CambioVecindad (x, x'', k) III.
/* Cambio de vecindad */;
7: until k = k_max ; ALGORITMO III
FUNCIÓN CAMBIOVECINDAD
8: t ←CpuTime()
Función CambioVecindad (x, x', k)
9: until t > t_max ;
1: if f (x') < f(x) then
2: x ← x' /* Realizar un movimiento */
Cada iteración del método BVNS repite la ejecución de los tres
3: k ← 1 /* Volver a vecindad inicial */
métodos anteriormente mencionados, mientras que no se
alcance el valor máximo de k (denotado por el parámetro 4: else
k_max), que determina el máximo número de vecindades a 5: k ← k+1 /* Siguiente vecindad */
explorar. Una vez alcanzado el valor de k_max, se permite
realizar una nueva exploración completa si el tiempo máximo Tal y como se ha indicado anteriormente, los pedidos no están
de ejecución (t_max) no se ha superado. disponibles, en su totalidad, al comienzo de la jornada de
trabajo. Durante la ejecución del algoritmo los pedidos entran
El método de búsqueda local propuesto dentro del algoritmo en el sistema siguiendo una distribución uniforme. El algoritmo
BVNS se presenta en el pseudocódigo de la función BVNS se ejecuta durante un tiempo t_max, considerando, en
PrimeraMejora (ver Algoritmo II). Este método, dada una cada iteración, los pedidos que hayan llegado hasta ese
solución de partida x explora las soluciones en el vecindario de momento. Una vez alcanzado el valor de t_max, el método
x, denotado como N(x), hasta que encuentra una solución de comienza de nuevo, realizando una nueva construcción y
mejor calidad, en cuyo caso, utiliza esta nueva solución como añadiendo los nuevos pedidos que hayan llegado durante el
punto de partida para la siguiente iteración del algoritmo. El tiempo de la última ejecución de BVNS. En cada ejecución del
procedimiento se repite hasta que toda la vecindad ha sido algoritmo se devuelve la mejor solución encontrada. Cuando el
explorada. La vecindad, en el caso de esta búsqueda local, está trabajador encargado de la recogida ha terminado con un último
definida por movimientos de inserción factibles, es decir, se lote, se le asigna, de la última solución disponible, uno de los
toma un pedido de un lote y se trata de insertar en cada uno de lotes aún no recogidos. Para determinar qué lote será el
los otros lotes disponibles, realizando la inserción únicamente siguiente en recogerse se emplea un algoritmo de selección. En
si el pedido cabe en el lote. En concreto, se realizará el primer
concreto, este algoritmo, elegirá el lote que tiene un menor valor
movimiento factible que suponga una mejora en valor de la
del cociente entre el tiempo estimado que tarda en recogerse el
función objetivo de la nueva solución vecina. El procedimiento
se repite hasta que ningún movimiento mejora la solución. lote y el peso del mismo.

554
XIII Congreso Español en Metaheurı́sticas y Algoritmos Evolutivos y Bioinspirados

V. RESULTADOS En la Tabla I y en la Tabla II de resultados, respectivamente, se


En esta sección se describe el conjunto de instancias observa como la diferencia entre los resultados arrojados por
utilizadas para la validación de los algoritmos propuestos y se los algoritmos es muy pequeña. En concreto, se reportan en la
recogen, además, los resultados por instancia, de entre el Tabla I los valores de función objetivo por instancia, obtenidos
conjunto de instancias seleccionadas. por cada método comparado y, en la Tabla II, la desviación
obtenida respecto a la mejor solución del experimento. En este
A. Instancias caso, ILS aparece como el mejor método, siendo capaz de
obtener el mayor número de mejores soluciones y la menor
Las instancias usadas para hacer esta investigación son las
desviación. Los mejores resultados, por cada instancia, están
publicadas por Albareda-Sambola et al. [18], en 2009. Las
instancias constan de 4 tipos de almacenes rectangulares con el resaltados en negrita en las tablas.
depósito colocado en la esquina inferior izquierda o en el centro TABLA I
inferior del almacén. La distribución de los ítems en los COMPARACIÓN CON EL ESTADO DEL ARTE
almacenes de las instancias puede ser de dos tipos: ABC y TIEMPO MÁXIMO DE LOS PEDIDOS EN EL SISTEMA
aleatoria. Las distribuciones de tipo ABC dividen los productos BVNS – FCFS
Instancia ILS BVNS - FCFS
en tres categorías, situando los productos más demandados en Completo
la categoría A, y los menos demandados en las categorías B y A1_100_000 1721232 1666627 1578027
A1_100_030 1215180 2081531 2621530
C respectivamente. Una vez clasificados los productos, aquellos A1_100_060 1515669 1945930 1885316
que caen dentro de la categoría A se sitúan más próximos al A1_100_090 1099946 1409978 1443535
depot, los pertenecientes a la categoría B, se sitúan a A1_150_000 2876411 4215847 3375709
continuación y, por último, se almacenan los productos A1_150_030 1081205 1426639 1645529
A1_150_060 2651687 2855052 3770849
pertenecientes a la categoría C. Además, cada instancia tiene A1_150_090 1232818 1437467 1422996
distinto número de pedidos (50, 100, 150, 200 y 250). Las A1_200_000 5578399 2273878 1479272
instancias empleadas para el problema son una pequeña
selección de 10 instancias de entre todas las publicadas en [18].
Es importante destacar que, en este artículo no se emplean las TABLA II
instancias de tamaño 50 pedidos, ya que no generan la COMPARACIÓN CON EL ESTADO DEL ARTE
DESVIACIÓN RESPECTO A LA MEJOR SOLUCIÓN DEL EXPERIMENTO
congestión suficiente para que sistema tenga sentido. Al no
BVNS – FCFS
producirse congestión, para este tipo de instancias basta con Instancia ILS BVNS - FCFS
Completo
seguir una política de recogida First-Come-First-Serve (FCFS). A1_100_000 9,1% 5,6% 0,0%
Para hacer la experimentación presentada en este documento, A1_100_030 0,0% 71,3% 115,7%
las instancias, con origen en la versión offline del problema, han A1_100_060 0,0% 28,4% 24,4%
tenido que ser adaptadas a instancias aptas para la recepción de A1_100_090 0,0% 28,2% 31,2%
A1_150_000 0,0% 46,6% 17,4%
pedidos online, generando un sistema de entrega de paquetes A1_150_030 0,0% 31,9% 52,2%
que distribuya la llegada de los pedidos. En concreto, el proceso A1_150_060 0,0% 7,7% 42,2%
encargado de entregar los paquetes al sistema sigue una A1_150_090 0,0% 16,6% 15,4%
distribución uniforme y los pedidos son entregados en un A1_200_000 277,1% 53,7% 0,0%
horizonte temporal de 4 horas.

B. Resultados En la Tabla III, se muestran los resultados obtenidos de manera


resumida. En concreto, se presenta el promedio de desviación
Por último, se ha comparado la propuesta algorítmica con los
de las 10 instancias consideradas y la suma del número de veces
resultados obtenidos por el algoritmo del estado del arte
que un algoritmo ha encontrado el mejor valor.
“Iterated Local Search” propuesto por Henn [5] en su artículo
de 2012. La comparación se ha realizado entre dicho algoritmo TABLA III
y dos variantes del BVNS propuesto, donde se combina un COMPARACIÓN CON EL ESTADO DEL ARTE
RESULTADOS AGRUPADOS
BVNS con cada uno de los dos tipos de construcciones
BVNS – FCFS
iniciales. Un FCFS estándar y un FCFS-Completo, donde Instancia ILS BVNS - FCFS
Completo
siempre se intenta completar la capacidad del lote a la llegada Promedio 31,8% 32,2% 33,2%
de cada pedido, con independencia de que dicho lote se hubiera Número de
7 0 2
dado por lleno en la iteración anterior. El BVNS se ejecuta en mejores
iteraciones de 60 segundos, permitiendo a los algoritmos
constructivos, reconstruir la solución con los nuevos pedidos
VI. CONCLUSIONES
llegados al sistema antes de continuar con la búsqueda. Como
selector, para determinar el siguiente lote a ser recogido, se En este trabajo se ha estudiado el problema de agrupación y
emplea el criterio del lote que tiene un menor valor en el recogida de pedidos online en almacenes logísticos. Este
cociente obtenido al dividir el tiempo que tarda en recogerse el problema de optimización, consiste, por un lado, en la
lote entre el peso del mismo. agrupación en lotes de los pedidos que llegan al sistema y, por
otro, en el diseño de rutas eficientes para recoger cada lote. La
variante abordada considera que únicamente se dispone de un

555
XVIII Conferencia de la Asociación Española para la Inteligencia Artificial

trabajador y que los pedidos llegan al almacén de manera [5] S. Henn, «Algorithms for On-line Order Batching in an Order- Picking
online, es decir, no todos los pedidos están disponibles al Warehouse», Computers &OperationsResearch, nº 39, pp. 2549–2563,
2012.
comienzo de la jornada de trabajo, sino que van llegando a
[6] H. R. Lourenco, O. C. Martin y T. Stutzle, «Iterated Local Search:
medida que avanza el proceso de recogida.
framework and applications», Handbook on MetaHeuristics, pp. 363-
397, 2001.
Para abordar el problema se ha repasado el estado del arte de la [7] C. G. y W. J., «Scheduling of vehicles from a central depot to a number
variante online del mismo y se han descrito los métodos de of delivery points», Operations Research, vol. 4, nº 12, pp. 568-581,
routing más comunes en la literatura. A continuación, se ha 1964.
propuesto un algoritmo basado en la metodología de Búsqueda [8] R. Pérez-Rodríguez, A. Hernández-Aguirre y S. Jöns, «A continuous
de Vecindad Variable, en concreto, su versión Básica. Se ha estimation of distribution algorithm for the online order-batching
problem», Int J Adv Manuf Technol, pp. 569–588, 2015.
implementado también el algoritmo más destacado del estado
[9] P. Larrañaga y J. A. Lozano, Estimation of Distribution Algorithms a
del arte. Para validar el algoritmo propuesto se ha adaptado un New Tool for Evolutionary Computation, Boston, MA: Springer, 2002.
subconjunto de las instancias presentes en la literatura para la
[10] F. Glover, «Future paths for integer programming and links to artificial
versión offline del problema, estableciendo una distribución intelligence», Computers and Operations Research, vol. 13, nº 5, pp.
uniforme para la llegada de los pedidos al almacén, y se han 533-549, 1986.
ejecutado ambos algoritmos en la misma máquina. [11] J. Rubrico, T. Higashi, H. Tamura y J. Ota, «Online rescheduling of
multiple picking agents for warehouse management», Robotics and
Pese a ser aún un trabajo en desarrollo, los resultados obtenidos Computer Integrated Manufacturing, nº 27, pp. 62–71, 2011.
son prometedores, siendo el algoritmo propuesto competitivo [12] R. Graham, «Bounds for certain multi-processing anomalies», Bell Syst
Tech, pp. 1563–1581, 1966.
con la mejor variante en el estado del arte de la actualidad. Si
bien, el método del estado del arte, propuesto por Henn en 2012, [13] J. Aspnes, Y. Azar, F. A., S. Plotkin y O. Waarts, «On-line load balancing
with applications to machine scheduling and virtual circuit routing»,
es el mejor, en promedio, de los algoritmos estudiados. Proceedings of the 25th A C Mannual symposium on the theory of
computing, pp. 623–631, 1993.
Como trabajos futuros, en primer lugar, se plantea la posibilidad [14] J. Zhang, X. Wanga y K. Huang, «Integrated on-line scheduling of order
de mejorar el algoritmo constructivo voraz utilizado como batching and delivery under B2C e-commerce», Computers & Industrial
punto de partida inicial. Además, parece recomendable probar Engineering, nº 94, pp. 280–289, 2016.
diferentes vecindades a la propuesta en este trabajo, de modo [15] Y. C. Ho y Y. Y. Tseng, «A study on order-batching methods of order-
picking in a distribution centre with two cross-aisles», International
que se puedan conformar nuevas búsquedas locales para Journal of Production Research, vol. 44, pp. 3391-3417, 2006.
embeber dentro del esquema de Búsqueda de Vecindad
[16] R. De Koster, E. S. Van der Poort y M. Wolters, «Efficient order batching
Variable Básica. De manera similar, varias búsquedas locales methods in warehouses», International Journal of Production Research,
pueden ser utilizadas en un esquema de Búsqueda de Vecindad vol. 37, pp. 1479–1504, 1999.
Variable General. Por otro lado, las estrategias más [17] N. Mladenovic y P. Hansen, «Variable neighborhood search»,
prometedoras propuestas, pueden ser empleadas también para Computers and Operations Research, nº 24, pp. 1097–1100, 1997.
resolver otras variantes del problema tales como: disponer de [18] M. Albareda-Sambola, A. Alonso-Ayuso y E. Molina, «Variable
más de un trabajador para recoger los pedidos en el almacén; o neighborhood search for order batching in a warehouse», Asia-Pacific
Journal of Operational Research, vol. 26, nº5, pp. 655-683, 2009.
establecer una fecha/hora límite de entrega de cada pedido que
se debe cumplir para evitar penalizaciones.

AGRADECIMIENTOS

Esta investigación ha sido parcialmente financiada por el


Ministerio de Economía y Competitividad, Referencias
“TIN2015-65460-C2-2-P y MTM2015-63710-P”.

REFERENCIAS

[1] R. Hall., «Distance approximation for routing manual pickers in a


warehouse», IIE Transactions, nº 25, pp. 77–87, 1993.
[2] C. Petersen, «Routeing and storage policy interaction in order picking
operations», Decision Science institute Proceedings, nº 31, pp. 1614 -
1616, 1995.
[3] R. De Koster, E. Van der Poort y K. Roodbergen, «When to apply
optimal or heuristic routing of orderpickers, in: Advances in Distribution
Logistics», Springer , pp. 375-401, 1998.
[4] K. Roodbergen y C. Petersen, «How to improve order picking efficiency
with routing and storage policie», Progress in Material Handling
Practice, pp. 107–124, 1999.

556
XIII Congreso Español en Metaheurı́sticas y Algoritmos Evolutivos y Bioinspirados

Una metaheurı́stica paralela para grandes problemas


de optimización dinámica entera mixta, con
aplicaciones en la biologı́a computacional
David R Penas David Henriques Patricia González
Departamento de Estadı́stica, Análisis Instituto de Investigaciones Marinas (IIM) Grupo de Arquitectura de
matemático y Optimización, y Consejo Superior de Investigaciones Computadores (GAC)
Instituto de Matemáticas (IMAT) Cientı́ficas (CSIC) Universidade da Coruña (UDC)
Universidade de Santiago de Vigo, España Coruña, España
Compostela (USC), España
david.rodriguez.penas@usc.es

Ramón Doallo Julio Saez-Rodriguez Julio R Banga


Grupo de Arquitectura de Joint Research Centre for Computational Instituto de Investigaciones Marinas (IIM)
Computadores (GAC) Biomedicine (JCR-Combine) Consejo Superior de Investigaciones
Universidade da Coruña (UDC) RWTH Aachen University Cientı́ficas (CSIC)
Coruña, España Aquisgrán, Alemania Vigo, España

Abstract—Esto es un resumen de nuestro artı́culo publicado región cercana a la solución global en un tiempo de ejecución
en PLoS ONE [1] para su presentación en la Multiconferencia aceptable. Sin embargo, cuando estos problemas tienen un
CAEPIA’18 Key Works. tamaño o complejidad considerable, el costo computacional
Index Terms—Optimización MIDO-MINLP, programación
paralela, metaheurı́stica cooperativa, Scatter Search. puede llegar a ser muy alto [5], [6].
Por ello, en este trabajo se ha presentado saCeSS2 [7]: una
I. I NTRODUCCI ÓN metaheurı́stica cooperativa y auto-adaptativa con capacidad
para resolver problemas MIDO-MINLP de manera satisfac-
Muchos problemas clave dentro de la bioinformática, la toria en un tiempo de cálculo razonable.
biologı́a computacional o la biologı́a de sistemas [2], se
pueden resolver a través de formulaciones basadas en la opti- II. M ÉTODOS
mización matemática. Un ejemplo es el desarrollo de modelos
matemáticos dinámicos, donde se mapean comportamientos Una de las contribuciones de este trabajo es la actualización
que varı́an en el tiempo de determinados procesos biológicos, de saCeSS [8], la cual es una herramienta distribuida, coop-
como por ejemplo el de rutas metabólicas, o la regulación de erativa y auto-adaptativa del método de búsqueda dispersa,
determinados genes. en concreto del enhanced Scatter Search (eSS) [9], [10]. Ası́,
En este trabajo nos hemos centrado en los conocidos en saCeSS es un optimizador global orientado a trabajar con prob-
bioinformática como problemas de ingenierı́a inversa [3], los lemas NLP que implementa las siguientes funcionalidades:
cuales consisten en reconstruir la estructura de una red celular • Paralelización a grano fino combinando el modelo
a partir de sus datos experimentales. Este proceso puede maestro-esclavo con un modelo en islas: cada esclavo/isla
ser formulado como un problema de optimización dinámica ejecuta de manera aislada una búsqueda con eSS, y
entera mixta (MIDO), debido a las variables dependientes en cuando se encuentra una solución prometedora, se envı́a
el tiempo y al uso de loggic-ODEs [4] para mapear ciertos al maestro, el cual es el encargado de gestionar las
comportamientos en el modelo, y donde además parte de comunicaciones entre las diferentes islas, evitando ası́ un
las variables de decisión son discretas (binarias o enteras). exceso de compartición de resultados que podrı́a degradar
Adicionalmente, este tipo de optimización también pertenece la diversidad del método.
a la programación no linear entera mixta (MINLP), dando • Cooperación de soluciones basado en la calidad de la
lugar a problemas extremadamente difı́ciles de resolver debido solución: el intercambio de información entre islas solo
a que presentan no linealidad, no convexidad, mal acondi- se realiza cuando una isla encuentra una solución lo
cionamiento y multimodalidad. suficientemente buena.
Las metaheurı́sticas son una buena alternativa a tener en • Comunicaciones ası́ncronas: el protocolo de comuni-
cuenta en este contexto, ya que generalmente alcanzan una caciones diseñado es ası́ncrono, para evitar retardos y

557
XVIII Conferencia de la Asociación Española para la Inteligencia Artificial

esperas, haciendo que la búsqueda de soluciones de cada gran superordenador y una plataforma de Cloud pública.
isla nunca se pare. Curiosamente, los resultados muestran cómo la cooperación
• Esquema autoadaptativo: se ha implementado un mecan- de búsquedas paralelas individuales modifica las propiedades
ismo de auto-configuración de los parámetros de la sistémicas del algoritmo secuencial, logrando aceleraciones
metaheurı́stica. Cada isla comenzará el proceso de opti- superlineales en comparación con una búsqueda individual
mización con unas opciones de configuración diferentes. (por ejemplo, aceleraciones de 15 con 10 núcleos) y mejorando
A medida que la búsqueda avance, el maestro permitirá significativamente (por encima del 60%) el rendimiento con
que los esclavos que hayan aportado menos soluciones a respecto a un esquema paralelo no cooperativo. La escalabil-
la búsqueda global adquieran la configuración de aquellos idad del método también es buena (las pruebas se realizaron
que hayan sido más exitosos. usando hasta 300 núcleos). Adicionalmente, se ha obtenido
Por lo tanto, la principal aportación de este trabajo es la que la utilización de saCeSS2 en una infraestructura pública de
presentación de un nuevo método, saCeSS2, que resulta de Cloud tiene un buen rendimiento en configuraciones que usan
las modificaciones del método saCeSS original con el principal 10 núcleos, pero el rendimiento se degrada considerablemente
objetivo de resolver problemas MIDO-MINLP. Esta extensión cuando se trata de utilizar más procesadores.
de funcionalidades ha seguido tres direcciones principales: IV. C ONCLUSIONES
1) Inclusión de un solucionador local especializado en la Los resultados mostrados en este trabajo demuestran que
resolución de problemas de optimización entera mixta: saCeSS2 puede ser útil en los problemas de ingenierı́a inversa
se ha combinado el eSS con un método de programación en modelos dinámicos de complejas rutas biológicas. Además,
cuadrática, llamado Mixed-Integer Sequential Quadratic los éxitos obtenidos mediante esta herramienta pueden ser
Programming (MISQP) [11], en cada isla. fácilmente exportados a otros casos de estudios que también
2) Modificación del mecanismo de auto-adaptación con el generen problemas de optimización MIDO-MINLP a gran
objetivo de evitar estancamiento prematuro de la conver- escala, como por ejemplo la ingenierı́a metabólica, la biologı́a
gencia: en este tipo de problemas de optimización, en- sintética, o la programación de fármacos.
contrar nuevas soluciones candidatas a ser compartidas Por otro lado, desde el punto de vista computacional,
no es fácil, por lo tanto se han relajado las condiciones también se han demostrado que las estrategias de virtualición
de adaptación del método. y computación en Cloud, pueden ser una buena alternativa,
3) Implementación de nuevos mecanismo para mantener aunque presentan unas bien conocidas limitaciones debido
la diversidad durante el proceso de cooperación: se ha principalmente a sobrecargas en la compartición de recursos.
observado que en este tipo de problemas hay que ser
R EFERENCES
muy cautos durante la compartición de soluciones, ya
que una cooperación agresiva daña muy rápidamente [1] D.R. Penas, D. Henrı́ques, P. Gónzalez, R. Doallo, J. Saez-Rodriguez and
J.R. Banga, “A parallel metaheuristic for large mixed-integer dynamic
la diversidad de la isla. Por eso, cuando se realice optimization problems, with applications in computational biology”
un cambio en los parámetros de configuración de una PLoS ONE, 12(8): e0182186, 2017.
isla que no ha contribuido lo suficiente, se produce un [2] J.R. Banga, “Optimization in computational systems biology” BMC
Systems Biology, 2 (1), 47, 2008.
reinicio aleatorio de la mayorı́a de soluciones de su [3] A.F. Villaverde and J.R. Banga, “Reverse engineering and identification
población. in systems biology: strategies, perspectives and challenges” Journal of
The Royal Society Interface, 11(91), 20130505, 2014.
Otra de las contribuciones de este trabajo ha sido la [4] D. Henriques, A.F. Villaverde, M. Rocha, J. Saez-Rodriguez , J.R. Banga
extensión y generalización de la formulación considerada “Data-driven reverse engineering of signaling pathways using ensembles
por Henriques et al [4] al adoptar un enfoque genérico del of dynamic models” PLoS Computational Biology, 13(2), e1005379,
2017.
problema del control óptimo entero mixto, pero sin utilizar [5] P. Mendes and D. Kell “Non-linear optimization of biochemical path-
relajaciones o transformaciones del problema original durante ways: applications to metabolic engineering and parameter estimation”,
su resolución. Bioinformatics, 14 (10), 869–883, 1998.
[6] C.G. Moles, P. Mendes and J.R. Banga, “Parameter estimation in
biochemical pathways: a comparison of global optimization methods”,
III. R ESULTADOS Genome Research, 13 (11), 2467–2474, 2003.
[7] saCeSS2 - global mixed-integer optimization library version 2017A,
Se ha probado el método propuesto en tres casos de estudio https://zenodo.org/record/290219
de ingenierı́a inversa muy complejos relacionados con la [8] D.R. Penas, P. González, J.A. Egea, R. Doallo and J.R. Banga “Param-
señalización celular: (1) un problema que considera una vı́a de eter estimation in large-scale systems biology models: a parallel and
self-adaptive cooperative strategy”, BMC Bioinformatics, 18:52, 2017.
señalización sintética, con 84 variables de decisión continuas [9] J.A. Egea, R. Martı́, J.R. Banga, “An evolutionary method for complex-
y 34 binarias; (2) un modelo dinámico de señalización en process optimization”, Computers & Operations Research, 37(2), 315-
cáncer de hı́gado que utiliza datos de alto rendimiento, con 324, 2010.
[10] J.A. Egea, E. Balsa-Canto, MS. G. Garcı́a, J.R. Banga, “Dynamic
135 variables de decisión continuas y 109 binarias; y (3) un optimization of nonlinear processes with an enhanced scatter search
problema extremadamente difı́cil relacionado con el cáncer de method”, Industrial & Engineering Chemistry Research, 48(9), 4388–
mama, con 690 variables de decisión continuas y 138 binarias. 4401, 2009.
[11] O. Exler, K. Schittkowski, “A trust region sqp algorithm for mixed-
Se reportaron resultados computacionales obtenidos en integer nonlinear programming”, Optimization Letters, 1(3), 269—280,
diferentes infraestructuras, incluyendo un clúster local, un 2007.

558
XIII Congreso Español
de Metaheurísticas,
Algoritmos Evolutivos y
Bioinspirados
(XIII MAEB)

MAEB 3: H EURÍSTICAS,
H IPERHEURÍSTICAS Y
M ETAHEURÍSTICAS
XIII Congreso Español en Metaheurı́sticas y Algoritmos Evolutivos y Bioinspirados

Genetic programming to evolve priority rules for


on-line scheduling on single machine with variable
capacity
Francisco Gil-Gala, Carlos Mencı́a, Marı́a R. Sierra, Ramiro Varela
Department of Computer Science, University of Oviedo,
Campus of Gijón, Gijón 33204, Spain
{giljavier, menciacarlos, sierramaria, ramiro}@uniovi.es
http:// www.di.uniovi.es/ iscop

Abstract—On-line scheduling is often required in a number this task is the use of hyper-heuristics, as search needs to
of real-life settings. This is the case of distributing charging be conducted in a space of heuristics rather than in a space
times for a large fleet of electric vehicles arriving stochastically of solutions to the scheduling problem. Since priority rules
to a charging station under power constraints. In this paper,
we consider a scheduling problem derived from a situation of are arithmetic expressions that can be naturally represented
this type: one machine scheduling with variable capacity and by trees, we opted to investigate a Genetic Programming (GP)
P
tardiness minimization, denoted (1, Cap(t)|| Ti ). The goal is approach, which is proposed in this paper. Experimental results
to develop new priority rules to improve the results from some indicate that GP is capable of evolving effective priority rules
classical ones as Earliest Due Date (EDD) or Apparent Tardiness P
for the (1, Cap(t)|| Ti ) problem, outperforming ATC and
Cost (ATC). To this end, we developed a Genetic Programming
(GP) approach. We conducted an experimental study showing other classical priority rules. The results also provide insights
that it is possible to evolve new efficient rules that outperform of practical interest that motivate further research.
ATC and EDD using the same problem attributes and operations. The remainder of the paper is organized as follows. Sec-
tion II reviews some GP approaches to evolve priority rules for
Index Terms—Scheduling, One machine scheduling, Priority scheduling problems. In Section III, we describe the EVCSP
Rules, Genetic Programming, Hyperheuristics, Electric Vehicle
Charging Scheduling and show how the solving procedure proposed in [6] decom-
poses an instance ofPthis problem into a number of instances
of the (1, Cap(t)|| Ti ) problem. In PSection IV, we give the
I. I NTRODUCTION
formal definition of the (1, Cap(t)|| Ti ) problem. Section V
One machine scheduling problems have attracted an ever introduces a schedule builder for this problem and describes
increasing body of research over the last decades, due to its main properties. In Section VI, we present some classical
both their usual high computational complexity as well as for priority rules used to solve the problem. Section VII describes
acting as building blocks in the development of solutions to the GP approach propose to evolve new priority rules. In
more complex scheduling problems. This paper focuses on Section VIII, we report the results of the experimental study
a problem in this class in which a number of jobs must be conducted to evaluate the proposed GP approach. Finally, in
scheduled on a single machine, whose capacity varies over Section IX we summarize the main conclusions and outline
time, with the objective of minimizing the total tardiness some ideas for future work.
objective function. This problem was introduced in [6] in the
context of scheduling the charging times of a large fleet II. E VOLVING PRIORITY RULES FOR SCHEDULING
P of PROBLEMS
Electric Vehicles (EVs), and it is denoted (1, Cap(t)|| Ti ).
Solving the Electric Vehicle Charging Scheduling Prob- The terms Dispatching Rule (DR) and Priority Rule (PR)
lem (EVCSP) tackled in [6] amounts P to solving a number are commonly used in the scheduling literature to refer to
of instances of the (1, Cap(t)|| Ti ) problem. Due to the “a simple heuristic that derives a priority index of a job
computational intractability of this problem and the tight real- from its attributes” [1]. Due to their low computational cost,
time requirements of the EVCSP, on-line scheduling repre- PRs are well suited for on-line scheduling: the job with the
sents the most
P (if not the only) suitable approach to the highest priority among those available at a given time is
(1, Cap(t)|| Ti ) problem. In [6], it is solved by means of scheduled next. In this section, we review some existing GP
the Apparent Tardiness Cost (ATC) priority rule, commonly approaches proposed to discovering dispatching or priority
used in the context of scheduling with tardiness objectives. rules for scheduling problems, such as job shop (JSSP), one
The aim of this paper is the automated development of machine or unrelated parallel machines scheduling problems,
new, efficient, priority
P rules specifically adapted to address among others. In some cases, the purpose is just to find a good
the (1, Cap(t)|| Ti ) problem. A natural way to cope with priority rule which is then embodied into a schedule builder.

561
XVIII Conferencia de la Asociación Española para la Inteligencia Artificial

Other works notice that a single rule may not suffice and focus
on finding sets of rules to be applied collaboratively to solve
instances with different characteristics.
Branke, Schols-Reiter and Hildeblant analyze in [1] three
representation models for priority rules for the dynamic JSSP:
expression trees commonly used in GP, Artificial Neural
Networks (ANNs) and weighted linear combination of job
properties. Their results show that expression trees evolved
by GP perform slightly better than the other approaches. Fig. 1. General structure of the charging station. (1) Three-phase electric
In [5], the authors propose evolving sets of rules that are power 400v AC, (2) lines, (3) charging points Type 2/AC IEC 62196-2
with V2G communication interface ISO 15118, (4) masters, (5) server, (6)
used collaboratively to solve problems. They use GP to evolve communication Rs 485, (7) communication TCP/IP, (8) slaves, (9) active
a set of PRs for the static JSSP. They consider single and vehicles, (10) inactive vehicles.
composite dispatching rules as terminal nodes, as for example
SPT or ATC, in addition to some parameters. The rules are
used in combination with various schedule builders, as for events as EVs arrivals and sends activation/deactivation signals
example the well-known Giffler and Thompson algorithm to the charging points in accordance with a schedule.
[4]. These rules are sequenced into heuristics. To produce a Due to the EVs arrivals being not known in advance, the
solution to the problem, each rule in the heuristic is applied EVCSP is dynamic and so schedules must be computed at
in turn to schedule a single operation. different points over time. Furthermore, the physical charac-
In [8], the authors consider composite PRs for the JSSP teristics and the operating mode of the charging station impose
given by linear combinations of 16 problem features, as for some restrictions to the EVCSP that make it hard to solve. In
example total remaining work for a job or total idle time for particular, the contracted power is limited and so there is a
all machines. The weights in the linear function are learned maximum load in each line. Besides, the load in the three
from a set of optimal solutions obtained by a MILP solver. lines must be similar to avoid an excessive imbalance among
Preference and imitation learning were used for this purpose. the three phases. Here, we assume two simplifications of the
In [13], GP is used to learn DRs for the Order Accep- model: (1) the contracted power is constant over time, and
tance and Scheduling problem (OAS) directly from optimal (2) the EVs charge at constant rate in the so called Mode
scheduling decisions. Instead of evolving just a single rule, a 1 in accordance with the regulation UNE-EN 61851-1 [7].
set of rules is evolved that is used in a Forward Construction Therefore, there is a maximum number N of EVs that can be
Heuristic (FCH): at each step the rule that produces the best charging in each line simultaneously.
local improvement is applied. One of the novelties of this Figure 2 shows a feasible schedule for the situation rep-
model is that the fitness of a rule depends on how well the rule resented in Figure 1; dark bars represent the EVs that are
performs at each decision point (i.e., whether or not it takes charging at time Tk and light bars represent EVs that are
the optimal decision) rather than the final objective values of scheduled at a later time. In this example, we consider that
the schedule. the maximum number of active EVs in a line is 4 and that the
In [3], the authors consider on-line scheduling for multiple maximum difference in the number of active EVs in every two
unrelated parallel machines. They also propose evolving new lines is 2. For these reasons, none of the tasks 12 and 13 can
priority rules with GP, incorporating some enhancements as be scheduled at Tk because if some of them were scheduled
dimension awareness to guarantee semantically correct rules at Tk , lines 2 and 3 would be imbalanced after completion of
and some GP variant as gene expression. task 8, as there would be 4 EVs charging in line 2 and only
In [2], PRs are evolved by GP for the Resource Constrained one (number 9) charging in line 3, so exceeding the maximum
Project Scheduling Problem (RCPSP) that outperform many of difference of 2. The schedule built at Tk allows the EVs in
the existing ones for this problem. the system to complete their charging periods without violating
P the constraints of the system. However, if new EVs arrive the
III. W HERE THE (1, Cap(t)|| Ti ) PROBLEM COMES FROM charging station after Tk , a new schedule must be built to
P
As pointed out, the (1, Cap(t)|| Ti ) comes from the EV accommodate them.
Charging Scheduling Problem (EVCSP) considered in [6]. In To solve the EVCSP, in [6] the authors proposed an algo-
turn, the EVCSP is motivated by the charging station designed rithm that considers at each scheduling time Tk the active EVs
in [15] to be installed in a community park where each user in each line (which cannot be rescheduled), the demanding
has its own space. Figure 1 shows the general structure and EVs (which have not yet started to charge), the maximum
the main components of this charging station. Each space has number of active EVs in a line, N , and a profile of maximum
a charging point which is connected to one of the three lines load in each line Nimax (t), i = 1, 2, 3, which is iteratively
of a three phase feeder. The system is controlled by a central adapted to keep the imbalance among the lines under control.
server and a number of masters and slaves. Each slave takes The objective is to schedule all the EVs in the three lines
control of two charging points and each master controls up such that all the constraints are satisfied and the total tardiness,
to eight slaves in the same line. The control system registers i.e., the delay w.r.t. to the times the users want to take their

562
XIII Congreso Español en Metaheurı́sticas y Algoritmos Evolutivos y Bioinspirados

(a) Non left-shifted schedule

Fig. 2. A feasible schedule for the problem in Figure 1. Tasks 1 - 10 are the
active EVs at time Tk in the lines 1, 2 and 3 respectively, while tasks 10 - 13 (b) Left-shifted schedule
correspond to inactive EVs in the lines 2 and 3, which could be rescheduled P
if it were neccesary to accomodate new EVs arriving after Tk . Fig. 4. Two feasible schedules for an instance of the (1, Cap(t)|| Ti )
problem with 7 jobs and a machine with capacity varying between 2 and 5.

capacity of the machine; i.e.,


X(t) ≤ Cap(t). (1)
ii. The processing of jobs on the machine cannot be pre-
empted; i.e.,
Ci = sti + pi , (2)
where Ci is the completion time of job i.
Fig. 3. Definition of the capacity of the machine Cap(t) from the maximum The objective function is the total tardiness, defined as:
profile Njmax (t) and the active EVs at time Tk . X
max(0, Ci − di ) (3)
i=1,...,n
EVs away, is minimized. If two of the obtained schedules are
which should be minimized.
imbalanced at some time point, some of the maximum profiles
Figure 4 shows an example of two feasible schedules for
Ni (t) must be recalculated and a new schedule obtained for
a problem with 7 jobs; the capacity of the machine varies
the line i. The details of this process are given in [6].
between 2 and 5 over time. Due dates are not represented
Therefore, scheduling the EVs in each line, subject to the
for the sake of clarity. As we can observe, in both schedules
maximum load and taking into account the active EVs, may
X(t) ≤ Cap(t) for all t ≥ 0.
be viewed as the problem of scheduling a set of jobs on a
One particular case of this problem is when the capacity of
machine with variable capacity over time. The calculation
the machine is constant over time. This is
Pthe parallel identical
of the capacity of the machine from the active EVs and
machines problem [10], denoted (P || TP i ), which is NP-
the maximum load profile is illustrated in Figure 3. In this
hard. Thus, it follows that the (1, Cap(t)|| Ti ) problem is
example, we consider that at the scheduling time Tk there are
NP-hard as well.
three EVs charging in line j as they were scheduled before
Tk , and that the maximum load of line j, Njmax (t), undergone V. S CHEDULE B UILDER
two adjustments due to lower load in the other two lines. So, Schedule builders constitute an essential component for
the capacity to accommodate new charging EVs, Cap(t), for designing efficient scheduling algorithms. Also known as
t ≥ Tk , is variable as shown in the upper part of the figure. schedule generation schemes, these methods provide a way for
computing and enumerating a subset of the feasible schedules,
IV. P ROBLEM D EFINITION
P thus enabling the definition of a search space to look for
The (1, Cap(t)|| Ti ) problem may be defined as follows. solutions to the problem. We use here the schedule builder
We are given a number of n jobs {1, . . . , n}, all of them proposed in [12], which produces left-shifted schedules, in
available at time t = 0, which have to be scheduled on a which no job can be scheduled earlier without changing the
machine whose capacity varies over time, such that Cap(t) ≥ starting time of some other job. Figure 4 shows two feasible
0, t ≥ 0, is the capacity of the machine in the interval [t, t+1). schedules for a problem instance with 7 jobs, one is not left-
Job i has duration pi and due date di . The goal is to allocate shifted (a), while the other one is left-shifted (b).
starting times sti , 1 ≤ i ≤ n to the jobs on the machine such The schedule builder is depicted in Algorithm 1; it maintains
that the following constraints are satisfied: a set U S with the unscheduled jobs, as well as the consumed
i. At any time t ≥ 0 the number of jobs that are processed capacity X(t) due to the jobs scheduled so far. U S is
in parallel on the machine, X(t), cannot exceed the initialized with all the jobs. In each iteration, the algorithm

563
XVIII Conferencia de la Asociación Española para la Inteligencia Artificial
Algorithm 1 Schedule Builder TABLE I
P
Data: A (1, Cap(t)|| Ti ) problem instance P. S UMMARY OF RESULTS FROM [12]. AVERAGE TOTAL TARDINESS .
Result: A feasible schedule S for P.
U S ← {1, 2, ..., n}; ATC GA
X(t) ← 0; ∀t ≥ 0;
n EDD SPT 0.25 0.5 0.75 1.0 Best Avg Time(s)
while U S 6= ∅ do
γ(α) = min{t′ |∃u ∈ U S; X(t) < Cap(t), t′ ≤ t < t′ + pu }; 15 8.28 14.03 7.35 7.17 7.27 7.50 6.53 6.53 13.13
U S ∗ = {u ∈ U S|X(t) < Cap(t), γ(α) ≤ t < γ(α) + pu }; 30 26.56 55.84 19.36 18.93 18.81 19.09 17.73 17.76 21.49
Non-deterministically pick job u ∈ U S ∗ ; 45 46.52 137.74 36.25 36.20 35.83 36.75 33.31 33.45 30.22
Assign stu = γ(α); 60 131.31 262.54 90.59 89.86 89.03 89.23 86.84 87.19 38.48
Update X(t) ← X(t) + 1; ∀t with stu ≤ t < stu + pu ; Avg 53.17 117.93 38.39 38.04 37.74 38.14 36.10 36.23 25.83
U S ← U S − {u};
end
return The schedule S = (st1 , st2 , ..., stn );
In Equation (4), p̄ is the average processing time of the jobs in
U S and g is a look-ahead parameter to be introduced by the
user. As we can see, the ATC rule combines the information
selects one unscheduled job among the ones that can start at exploited by SPT and EDD as the priority of a job i is in
the earliest time γ(α). inverse ratio with its duration pi and it is decreasing with the
Note that the selection of a job to be scheduled at each slack time to its due date dj − γ(α) − pj .
iteration is non-deterministic. Regardless of this, we can Table I reproduces some results reported in [12] obtained by
guarantee that the application of Algorithm 1 always results in the rules EDD, SPT and ATC with four values of the parameter
a feasible left-shifted schedule; for example, the sequence of g, and by a genetic algorithm proposed therein (GA), over a
choices (1, 3, 4, 5, 6, 7, 2) would lead to building the schedule set of 120 instances distributed in four sets having different
in Figure 4(b). Furthermore, any left-shifted schedule may be number of jobs (15, 30, 45, 60) with 30 instances each. As
obtained considering the appropriate choice in each iteration. we can see, ATC produces much better results than both EDD
In other words, the scheduler searches in the whole space of and SPT, the results of the latter being actually poor, as can
left-shifted schedules, which is dominant; i.e., it contains at be expected due to the fact that this rule does not consider
least one optimal schedule. any information related to the tardiness objective. Besides, the
The schedule builder may be instantiated by using any performance of ATC depends on the value of the parameter g;
priority rule or heuristic, as we will see in the next section. In the best value of g depending on the the size of the instances
[12] it was embedded as a decoder in a genetic algorithm. n. Furthermore, the ATC rule produces worse results than
P the GA, which of course takes much longer time than the
VI. P RIORITY RULES FOR THE (1, Cap(t)|| Ti ) priority rules. These facts lead us to formulate the following
A schedule builder, as the one shown in Algorithm 1, may hypotheses:
be used in combination with some priority rule to make the 1) The ATC rule may be outperformed by new rules having
non-deterministic choice in each iteration: the job having the a different structure or more detailed information of the
highest priority is chosen to be scheduled. This paradigm is problem domain, or just considering other parameters.
called priority scheduling, which is particularly appropriate for 2) Given a benchmark containing instances with a similar
on-line scheduling, where decisions must be made quickly. structure, there may exist priority rules that are well
In the literature there are a number
P of rules that could adapted to this particular benchmark.
be adapted to the (1, Cap(t)|| Ti ) problem. Among the
simplest ones, we may consider Earliest Due Date (EDD) VII. E VOLVING NEW PRIORITY RULES WITH G ENETIC
or Shortest Processing Time (SPT); the first one picks the P ROGRAMMING
operation with the smallest due date, while SPT selects the
From the hypotheses above, our purpose is to devise new
one with the least duration. These two rules are often used for P
dispatching rules for the (1, Cap(t)|| Ti ) problem. To this
objective functions that are non decreasing with the completion
end, we propose using hyper-heuristics, as they provide a
time of the jobs, as for example the makespan, the lateness
natural way of searching over a (sub)space of the heuristics
or even the tardiness. As they are quite simple rules, it often
that solve a given problem. As we are interested in devising
happens that they produce rather moderate results. In contrast,
some arithmetic expression, as that of the ATC rule given in
more sophisticated rules are usually able to produce (much)
Equation (4), Genetic Programming (GP) [11] is a good choice
better results as they take into account more knowledge on
as it provides a way of evolving tree structures.
the problem. This is the case of the Apparent Tardiness Cost
The first step in the design of a GP solution is selecting
(ATC) rule, which was used with success to solve some
the sets of terminal and function nodes of the candidate trees.
scheduling problems with tardiness objectives (e.g. [14], [9]);
Terminal symbols represent the elementary properties that are
with this rule, the priority of each job j ∈ U S is give by
considered relevant to establish jobs’ priorities as, for example,
Equation (4).
processing times, due dates, etc., as well as some constants.
Function symbols are the elementary arithmetic operations and
 
1 −max(0, dj − γ(α) − pj )
πj = exp (4) some other unary and binary functions.
pj g p̄

564
XIII Congreso Español en Metaheurı́sticas y Algoritmos Evolutivos y Bioinspirados

TABLE III
GP PARAMETERS ’ SETTING .

Cross., Mut., Init. pop. gen. Standard [11]


Cross. and Mutation ratio 0.8 and 0.02 resp.
Population size 500
Number of generations 500
Max. init. chrom. depth 6
Max. chromosome size 32
Elitism 1
Number of runs 30

Fig. 5. Tree representing the ATC rule.


To control the size of chromosomes, we limit the size of the
initial candidate solutions and also after crossover. In this case,
Looking at conventional rules as ATC, EDD or SPT, we if an offspring exceeded the size limit, it is discarded and the
have chosen the functional and terminal sets of symbols parents are mated again choosing different points until some
showed in Table II. The considered grammar generates any valid offspring is reached.
feasible expression in accordance with the arithmetic rules,
without any other restrictions. For this reason, we could have VIII. E XPERIMENTAL S TUDY
inconsistencies as division by 0. To dealing with that, we We have conducted an experimental study aimed at assess-
make use of the EDD rule in the following way: when a rule ing the quality of the rules obtanied by the proposed approach
produces a division by 0 for some job, we assume that this rule (GP). To this aim, we implemented a prototype in Java, and
does not decide anything for that job. Then, we consider the ran a series of experiments on a Linux cluster (Intel Xeon 2.26
job having the largest priority together with all jobs for which GHz. 128 GB RAM).
the rule did not decide and apply to these jobs the EDD rule. The experiments were carried out over a benchmark set
This way, a rule producing many divisions by 0 gets penalized of 2000 instances, generated by means of the procedure
as many decisions are taken by using EDD. Figure 5 shows introduced in [12]. Each instance is characterized by the
the tree representing the ATC rule. number of jobs (n) and the maximum capacity of the machine
We remark that the set of terminal symbols only include (M C). Given fixed n and M C, a random instance is generated
information regarding jobs, but no information about the using uniform distributions as follows (all sampled values are
machine, such as its capacity Cap(t), which is relevant in integers):
this problem. The main reason to not include it is that in 1) Each job i ∈ J = {1, ..., n} is assigned a random
a first stage we plan to analyze the extent to which it is processing time pi ∈ {1, ..., 100}.
possible to improve the conventional rules without considering 2) Once all jobs have a processing time, they Pare assigned
new information. Besides, including new terminal symbols a random due date di ∈ [pi , max(pi + 2, j∈J pj /2)].
augments the size of the search space. 3) The capacity of the machine (Cap(t)) is generated as a
unimodal function, with each constantP interval taking a
TABLE II random duration in the range [1, pj /M C]. Both the
F UNCTIONAL AND TERMINAL SETS USED TO BUILD EXPRESSION TREES .
S YMBOL “-” IS CONSIDERED IN UNARY AND BINARY VERSIONS .
initial and the final capacity of the machine is a random
integer in {1, 2}.
Function - + / * pow max min exp This procedure aims at avoiding the generation of under-
Terminal pi di γ(α) p̄ 0.00 0.01 . . . 0.99 1.0 constrained instances, which can be easily solved. All the
2000 instances considered in this experimental study have been
We used a rather conventional GP as proposed in [11] with generated with n = 60 and M C = 10.
only some small changes. We ran GP considering a training subset of 50 instances
The evaluation of chromosomes is the most time consuming to evaluate each candidate solution and used the remaining
component of the algorithm and P consists in solving a battery 1950 instances for testing. The parameters of GP are given
of instances of the (1, Cap(t)|| Ti ) problem. The fitness in Table III. These parameters were chosen from a large
of each individual being the inverse of the average cost (total set of preliminary experiments. In these experiments we ran
tardiness) of the solutions obtained. Therefore, if the instances GP 30 times and recorded the best priority rule evolved
had a similar structure, for example if their data were generated in each run. Then, we report the average results of the 30
from the same probability distributions, we could expect the rules and the results from the best and worst rules (over
GP to evolve rules well adapted to those instances. the training and test sets). These results are summarized in
The evolutionary schema used in our approach is gener- Table IV, which includes the results from EDD, ATC (with
ational, with a selection phase in which all chromosomes g ∈ {0.25, 0.5, 0.75, 1.0}) and the solutions by the genetic
are organized into pairs and tournament replacement is done algorithm from [12] (GA).
between every two parents and their two offsprings. The The results over the test set show that the best priority rule
strategy is combined with elitism. obtained in the training phase (which in this case is the second

565
XVIII Conferencia de la Asociación Española para la Inteligencia Artificial

TABLE IV a schedule builder guided by priority rules is able to obtain


S UMMARY OF RESULTS . AVERAGE VALUES OF THE TOTAL TARDINESS even better solutions. Therefore, we conjecture that by using
OBTAINED FOR THE TRAINING AND TEST SETS BY THE BEST RULES
EVOLVED IN EACH ONE OF THE 30 RUNS OF GP, ATC, EDD AND GA. more attributes of the problem, in particular some related to
the capacity of the machine, better rules may be evolved.
Priority Rules Train. Test. Besides, it seems clear that no single rule can be the best
Best(in training) 636.0 548.0 one in every problem instance. Therefore, it may be more
Average(30 rules) 640.4 553.1 appropriate to try to evolve sets of rules to cover different
Worst(in training) 678.0 580.0
subsets of instances, or to take decisions at different stages in
ATC(g=0.25) 660.2 565.0
ATC(g=0.50) 650.9 552.8 the schedule construction. These are some promising lines of
ATC(g=0.75) 650.0 557.1 research we plan to explore in the future.
ATC(g=1.00) 659.0 570.2
ATC(avg. 4 g-values) 655.0 561.3 ACKNOWLEDGEMENTS
EDD 833.3 695.7
This research has been supported by the Spanish Govern-
GA 616.1 520.4
ment under research project TIN2016-79190-R.
R EFERENCES
[1] Branke, J., Hildebrandt, T., Scholz-Reiter, B.: Hyper-heuristic evolution
of dispatching rules: A comparison of rule representations. Evolutionary
Computation 23(2), 249–277 (2015)
[2] Chand, S., Huynh, Q., Singh, H., Ray, T., Wagner, M.: On the use of
genetic programming to evolve priority rules for resource constrained
project scheduling problems. Information Sciences 432, 146 – 163
(2018)
[3] Durasevic, M., Jakobovi, D., Kneevi, K.: Adaptive scheduling on unre-
Fig. 6. Tree representing the best rule obtained. lated machines with genetic programming. Applied Soft Computing 48,
419 – 430 (2016)
[4] Giffler, B., Thompson, G.L.: Algorithms for solving production schedul-
ing problems. Operations Research 8, 487–503 (1960)
best performing rule on the test set) performs better than the [5] Hart, E., Sim, K.: A hyper-heuristic ensemble method for static job-shop
four versions of the ATC rule. In addition, the average value of scheduling. Evolutionary Computation 24(4), 609–635 (2016)
[6] Hernández-Arauzo, A., Puente, J., Varela, R., Sedano, J.: Electric vehicle
the 30 evolved rules outperforms the average value of the four charging under power and balance constraints as dynamic scheduling.
ATC rules. We conducted Wilcoxon paired tests confirming Computers & Industrial Engineering 85, 306 – 315 (2015)
statistically significant differences in favor of the new best [7] (IEC), T.I.E.C.: Electric Vehicle Conductive Charging System?Part 1:
General Requirement; IEC 61851-1. London, UK (2001)
and average results obtained by the proposed GP approach. [8] Ingimundardottir, H., Runarsson, T.P.: Discovering dispatching rules
The worst performing rule evolved by GP lags behind the ATC from data using imitation learning: A case study for the job-shop
rules, although it yields better average total tardiness than the problem. Journal of Scheduling First Online: 13 June 2017 (2017)
[9] Kaplan, S., Rabadi, G.: Exact and heuristic algorithms for the aerial
EDD rule, which performs worst overall. The GA produces refueling parallel machine scheduling problem with due date-to-deadline
the best results, at the expense of taking much longer time window and ready times. Computers & Industrial Engineering 62(1),
(note that priority rules take negligible time). 276–285 (2012)
[10] Koulamas, C.: The total tardiness problem: Review and extensions.
A close look at the actual priority rules generated reveal Operations Research 42, 1025–1041 (1994)
some interesting insights. Figure 6 shows the tree represen- [11] Koza, J.R.: Genetic Programming: On the Programming of Computers
by Means of Natural Selection. MIT Press (1992)
tation of the best priority rule obtained in the experiments. [12] Mencı́a, C., Sierra, M.R., Mencı́a, R., Varela, R.: Genetic algorithm for
Interestingly, we can observe that this rule contains some odd scheduling charging times of electric vehicles subject to time dependent
expressions, such as (dj − 0.43) on the left-most part of the power availability. In: Ferrández Vicente, J.M., Álvarez-Sánchez, J.R.,
de la Paz López, F., Toledo Moreo, J., Adeli, H. (eds.) Natural and
tree. This may be due to using a grammar allowing for any Artificial Computation for Biomedicine and Neuroscience. pp. 160–169.
valid arithmetic expression, and motivates further research, Springer International Publishing, Cham (2017)
e.g., using a restricted grammar instead to deal with these [13] Nguyen, S., Zhang, M., Johnston, M.: A sequential genetic programming
method to learn forward construction heuristics for order acceptance and
situations. scheduling. In: Proceedings of the 2014 IEEE Congress on Evolutionary
Computation, CEC 2014 (2014)
IX. C ONCLUSIONS [14] Sang-Oh Shim, S.O., Kim, Y.D.: Scheduling on parallel identical ma-
chines to minimize total tardiness. European Journal of Operational
This paper studies the one machine scheduling
P problem with Research 177(1), 135–146 (2007)
variable capacity, denoted (1, Cap(t)|| Ti ), and shows that [15] Sedano, J., Portal, M., Hernández-Arauzo, A., Villar, J.R., Puente, J.,
Varela, R.: Intelligent system for electric vehicle charging: Design and
Genetic Programming is a suitable approach to generate new operation. DYNA 88(6), 640–647 (2013)
priority rules, improving the best-performing classical ones
for total tardiness minimization such as EDD and ATC. In
order to make a fair comparison, we considered the same
problem attributes and operations as in these rules. At the same
time, we have seen that there is still room for improvement,
as a genetic algorithm running for much longer time than

566
XIII Congreso Español en Metaheurı́sticas y Algoritmos Evolutivos y Bioinspirados

On the Landscape of a Problem of Finding


Satisfactory Metaheuristics
José M. Cecilia, Baldomero Imbernón José-Matı́as Cutillas-Lozano, Domingo Giménez
Bioinformatics and HPC Research Group (BIO-HPC) Department of Computing and Systems
Polytechnic School, Univ. Católica San Antonio of Murcia (UCAM) University of Murcia
Murcia, Spain Murcia, Spain
{jmcecilia,bimbernon}@ucam.edu {josematias.cutillas,domingo}@um.es

Abstract—Fitness landscape analysis is used to determine the to the development of hyperheuristics on top of the meta-
distribution and shape of the fitness function for the space of heuristic schema [7]. These hyperheuristics has high compu-
solutions of optimization problems. It is a hard task which can tational costs due to the repeated application of numerous
help in the design of efficient metaheuristics to approach the
solution of the problem in hand. This paper studies the landscape metaheuristic configurations to the problem in hand. The
of a problem of finding satisfactory metaheuristics. A molecule- base problem may in turn be computationally demanding,
docking problem and a problem of determination of kinetic and so the combination of the high computational cost of
constants in a chemical reaction are used as case studies. We metaheuristics with that of the hyperheuristics working on top
are not working at the level of the case study problems, but at of metaheuristics advises the exploitation of parallelism at both
a higher abstraction level, which makes the landscape analysis
an even harder task. The metaheuristics being analyzed are levels [8]. But even the efficient exploitation of parallelism is
developed with a parameterized schema, with each combination not enough to reduce the search to an acceptable time, and so
of parameters in the schema being an element of the solutions fitness landscape analysis can guide the search for satisfactory
space and a metaheuristic to be applied to the base problem. The metaheuristics. The conclusions drawn here can be applied to
fitness for a metaheuristic is measured by applying it to some the problem of searching for satisfactory metaheuristics for
training instance of that problem. Some highlights are given on
how fitness landscape analysis can be conducted for this type of other optimization problems.
problems. The ideas analyzed with the two case studies can be The rest of the paper is organized as follows. Section II
extended for the development of hyperheuristics searching for briefly describes the two case studies. The general ideas of
satisfactory metaheuristics for other optimization problems. the parameterized metaheuristic schema and the hyperheuristic
Index Terms—fitness landscape analysis, metaheuristics, hy- developed on top of it are presented in Section III. The fitness
perheuristics, molecule-docking, reaction kinetics
landscape analysis is shown in Section IV. Finally, Section
V summarizes the conclusions and gives some directions for
I. I NTRODUCTION
future work.
Metaheuristics are used to approach the solution of complex
optimization problems, but the selection of a satisfactory II. C ASE S TUDY P ROBLEMS
metaheuristic for a particular problem is a difficult task. A. The Molecule-Docking Problem (MDP)
Fitness landscape analysis has been applied to the field of Virtual Screening (VS) methods analyze large libraries of
metaheuristics since the 1980s [1]–[3]. It studies the shape of small molecules (ligands) to search for those structures which
the fitness in the space of solutions, and gives guidelines for are most likely to bind to a protein receptor or enzyme [9].
the design of metaheuristics for the problem in hand. VS is computationally demanding and requires the application
Here we are interested in the landscape of an optimization of approximate optimization and high performance computing
problem built on top of another optimization problem. Two techniques [10], [11].
optimization problems are used at the bottom as case studies: Molecular docking is used to predict non-covalent binding
a molecule-docking problem [4] and determining the kinetic of molecules. Normally, the molecules to be bound are a
constants of a chemical reaction [5]. Several metaheuristics macromolecule (receptor) and a small molecule (ligand). There
can be applied, and a hyperheuristic (a metaheuristic in itself) are several scoring functions that can be used to measure the
searching in the space of metaheuristics is the optimization strength of the bond [12]. The Lennard-Jones potential is used
problem at the top of our hierarchy. here. The sum of the interactions of each atom of an active site
A parameterized schema of metaheuristics is used. It was of the protein with each atom of the ligand is computed. So,
initially used for the application of several metaheuristics the computing cost is quadratic in the sizes of the molecules.
to some optimization problems [6]. The next step led us The ligand can bind at several spots on the receptor
molecule. There are six degrees of freedom for the ligand,
Supported by the Spanish MINECO and European Commission
FEDER funds, under grants TIN2015-66972-C5-3-R and TIN2016-78799-P three for its translation and three for the rotation. The spot,
(AEI/FEDER, UE). translation and rotation which give the lowest value of the

567
XVIII Conferencia de la Asociación Española para la Inteligencia Artificial

scoring function are sought. The values of the movements and the meaning of the metaheuristic parameters in the schema
rotations of the ligand can be approached with metaheuristics, are commented on.
and a search is conducted in the neighborhood of each spot. Initialize: Sets of candidate solutions are randomly
So, independent metaheuristics are applied at each spot and generated. For the MDP, a subset is generated at each spot, but
the reference set for the search is composed of a subset for in the experiments only one spot is considered for low execu-
each spot. tion times. The number of elements is given by the parameter
Initial Number of Elements (IN EIni), which determines if
B. Kinetic Constants of a Chemical Reaction (KCP) the metaheuristic is closer to a local search (IN EIni = 1) or
When chemical reactions occur in heterogeneous phase the to a population based method.
variables that affect the reaction rate are temperature, pressure, Some of the generated elements are improved, and the
composition and mass transfer rate. The kinetics of the disso- intensity of the improvement can be varied to determine the
lution of calcium carbonate is used for the experiments. It is a importance of the local search in the metaheuristic. A percent-
function of the concentration of the various carbonate species age (P EIIni) of the elements is improved by comparing its
in the solution and, therefore, a function of the partial pressure fitness with that of a neighbor configuration, which substitutes
of carbon dioxide and pH. Depending on the value of the pH, the original element if the fitness is improved. The intensity of
there are different ways in which the dissolution occurs: by the improvement is determined by parameter IIEIni, which
reaction with acetic acid, by reaction with carbonic acid, and represents the maximum number of neighborhood analysis
by the hydrolysis reaction [13]. Therefore, the variation of steps.
moles of calcium over time is Another intensification parameter is considered for MDP.
A ligand has a number of flexibility junctions determined by
1 dNCa2+  n2 n
= −k1 an1 H3 O+ − k2 an3 [H2 CO3 ] 4 − k3

its crystallographic structure. In the intensification, N EIF lex
V dt represents the number of configurations obtained by rotation of
(1)
where ki are the combined reaction rate constants, ni are the the junctions to be evaluated for each candidate element. This
reaction orders, and a is the area of the tablet, which is known parameter depends on the characteristics of the ligand, and so
for each increase of time. The integration of the equation for the same value is considered for improvements in the functions
a certain value of time, tj , gives the increase of calcium in of the schema (after initialization and in the improvements
the solution as a function of the concentrations of protons and inside the loop).
carbonic acid. An individual is represented by a real vector of A number of the best elements is selected for the following
size seven. Every time the fitness of an individual is computed, iteration. The implementations for the two problems differ
the whole chemical system is solved with an iterative process, slightly at this point. In the KCP only one parameter is used,
and the fitness is obtained by comparing the values obtained for the Number of Best Elements to include (N BEIni). But
with the simulation with those obtained experimentally. in the MDP a Number of Best Elements (N BEIni) and of
Worst Elements (N W EIni) is established, in order to not
III. PARAMETERIZED M ETAHEURISTICS AND concentrate the search on only the most promising areas. The
H YPERHEURISTICS selection can be made in different ways (random, roulette,
etc). Our implementation selects the N BEIni best elements,
The application of a parameterized schema of metaheuristics
and N W EIni elements are randomly selected from the half
(Algorithm 1) to the two case studies is considered. Schemas
elements with the worst scores.
of this type have been applied to other problems, and the fit-
EndCondition: Typically, the end condition of a meta-
ness landscape analysis techniques here used can be extended
heuristic is a maximum number of iterations (M N IEnd) or
to other hard optimization problems.
a maximum number of iterations without improving the best
Algorithm 1 Parameterized metaheuristic schema solution (M IREnd). Because we are interested in the study of
Initialize(S,ParamIni) //Generate initial set and improve elements
the influence of the parameters on the fitness, the experiments
while (not EndCondition(S,ParamEnd)) do are carried out for fixed times.
SS=Select(S,ParamSel) //Select elements for combination Select: A number of the best (N BESel) and the worst
SS1=Combine(SS,ParamCom) //Combine pairs of elements
SS2=Improve(S,SS1,ParamImp) //Improve and diversify
(N W ESel) elements of the reference set are selected. The
S=Include(S,SS1,SS2,ParamInc) //Update the reference set selection is made in the same way as the elements to be
end while included in the reference set are selected for the MDP after
the improvement in the initialization.
The schema comprises some basic functions which work Combine: A number of combinations is carried out be-
on sets (S, SS, SS1 and SS2) of configurations. Some tween best (N BBCom), worst (N W W Com) and best-worst
metaheuristic parameters (P aramX) are included in each (N BW Com) pairs of elements. The inclusion of worst ele-
basic function, which can be implemented in different ways, ments diversifies the search. In the MDP the combination of
and the number of parameters and their meanings also change. a pair of elements gives a new element obtained as the mean
Landscape analysis is conducted to study the influence of the of the translation and rotation parameters of the two elements.
parameters on the fitness. The sets, the basic functions and In the KCP, the classical crossing by a middle point is used.

568
XIII Congreso Español en Metaheurı́sticas y Algoritmos Evolutivos y Bioinspirados

Improve: Some of the elements obtained by combination scape could help to guide the search of the hyperheuristic
are improved in the same way as in the improvement in for low search times.
the initialization. The percentage of elements to be improved • In general, to reduce the high execution times, the meta-
is P EIImp, and the intensification of the improvement is heuristic parameters for the hyperheuristic will be smaller
determined by IIEImp. than those of the metaheuristics it searches for. The sets
A diversification strategy is applied to avoid falling into in the search are smaller, as are the number of elements to
local minima. The percentage of elements from the reference be improved and the intensification of the improvement.
subsets to be diversified is P EDImp, and the elements • The improvements in the initialization and inside each
obtained by diversification are improved with an intensification iteration are carried out by analyzing elements in the
IIDImp. An element is diversified by randomly generating neighborhood, with the neighbors of an element being
a new value for one of its parameters, which is selected ran- those which are obtained from it by changing one ele-
domly. The elements generated by diversification are improved ment of the metaheuristic parameter vector (increasing
to avoid early death. or decreasing by one).
Include: The N BEInc best elements from all those • The combination of a pair of metaheuristics is carried out

in the reference set and those generated by combination, with the typical method of selecting a crossing point and
diversification and improvement are included in the reference combining the initial part from one ascendant with the
set for the next iteration. The reference set is completed with second part from the other. If an invalid configuration of
F N EIni − N BEInc elements randomly selected from the the metaheuristic parameters is generated, it is discarded.
remaining ones. • The diversification consists of the substitution of the

There are eighteen metaheuristic parameters in the imple- value of a randomly selected metaheuristic parameter by
mentation for the MDP and sixteen for the KCP, and their another value randomly selected from the search range
influence on the fitness was analyzed varying the execution for this parameter.
time and without considering the end condition parameters. There is an optimization problem at the bottom (MDP or
Hyperheuristics are methods for the selection of satisfactory KCP), and the fitness landscape analysis of metaheuristics for
metaheuristics [14]. The schema in Algorithm 1 can be used this problem studies the shape of the fitness function for some
for the development of hyperheuristics. The optimization prob- instances of the problem. At a higher abstraction level, the
lem now consists in selecting the values of the metaheuristic hyperheuristic is now the metaheuristic to be guided with the
parameters which give the best fitness for some training prob- results of the fitness landscape analysis.
lems. The hyperheuristic is therefore another metaheuristic that IV. F ITNESS L ANDSCAPE A NALYSIS
can in turn be developed as a parameterized metaheuristic with
The fitness landscape analysis of the problem of finding sat-
the parameterized schema. The general ideas of this type of
isfactory metaheuristics for an optimization problem is a hard
hyperheuristics when applied for the two case studies are:
task. The fitness of each metaheuristic is measured through
• The possible solutions for the hyperheuristic are vectors its application to various training instances of the problem.
of metaheuristic parameters (metaheuristics). The sizes The optimization problem can have high computational costs,
of the vectors depend on the implementation of the which, together with the number of training problems, means
parameterized schema: 18 or 16 parameters for the MDP high execution times. Furthermore, the results obtained with
and the KCP, with only 16 or 14 if the end condition is one or several training problems should be representative for
a fixed execution time. The hyperheuristic searches in a other problems. For simplification, for the two case studies
predetermined search range for each parameter. For the experiments were carried out for three instances of the problem
experiments with the MDP, IN EIni varies between 20 and for 100 randomly generated metaheuristics, with the
and 200, and a range between 0 and 100 is established for values of the metaheuristic parameters in the ranges previously
the rest of the parameters; and with the KCP, IN EIni indicated.
and F N EIni are between 20 and 200, the intensifica- The characteristics of the pairs for the MDP are given
tion parameters between 0 and 50 and the rest of the in Table I; they correspond to the Angiotensin-converting
parameters between 0 and 100. enzyme (ACE), the Glycogen phosphorylase beta (GPB) and
• The fitness for each metaheuristic is obtained through its the Poly(ADP-ribose) polymerase (PARP), and the table shows
application to some training problems. Only one training the number of atoms of the receptor and the ligand and the
problem can give problem-dependent results, and a large number of junctions of the ligand. The best fitness when
number of training problems means large execution times. applying each metaheuristic to the corresponding receptor-
Fitness landscape analysis can help in determining how ligand pair was stored at intervals of 30 seconds, starting at
a particular problem is representative of the behavior of 30 seconds and finishing at 600 seconds. Three experiments
other problems. for which laboratory data are available are used for the KCP.
• The execution time of a hyperheuristic of this type is very In this case, each metaheuristic is run for 100 seconds, and
high due to the repeated application of metaheuristics to the fitnesses obtained at intervals of 5 seconds are stored. The
the training instances. So, the analysis of the fitness land- results of the experiments are analyzed to study three aspects:

569
XVIII Conferencia de la Asociación Española para la Inteligencia Artificial

TABLE I seems to be the fourth parameter in importance for good


C HARACTERISTICS OF THE RECEPTOR - LIGAND PAIRS USED IN THE fitness, maybe because combining these elements avoids in-
EXPERIMENTS .
tensification in their neighborhood.
pair #atoms receptor #atoms ligand #junctions The relevance of the parameters changes for the KCP. The
ACE 9198 59 13 most relevant parameter is always clearly IDEImp, which
GPB 13261 29 1
PARP 5588 32 3 has an inverse relation with the fitness, so it is advisable
not to work too much on the improvement of elements after
diversification. The other parameters have little influence. The
• The influence of the parameters in the fitness is analyzed, initialization parameters have in general a positive influence
both individually (which parameters influence the fitness and, in particular, the improvement parameters in the initial-
most and if the influence is positive or negative) and ization. The improvement of the elements in the successive
globally (if the distance between metaheuristics is related steps (P EIImp and IIEImp) also has a positive influence.
to the difference of their fitnesses). The hyperheuristics So, the local searches lead to better results for this problem.
could concentrate the search in the parameters which In any case, independently of which parameters have most
prove to be the most influential, and in the ranges where influence on the fitness, the analysis can serve to guide the
the best fitnesses are obtained. hyperheuristic according to the problem it is being applied
• The influence of the execution time on the distribution of to and the particular implementation of the parameterized
the fitness and on the influence of the parameters in the metaheuristic schema for that problem.
fitness. This study can help establish a time limit for the There is a need to reduce the training time of hyperheuris-
application of the metaheuristics to the training problem, tics. Figures 1 and 2 show the relation of the metaheuristic
so reducing training time. parameters with the fitness at several time-steps. After a
• Whether the results obtained for one instance are similar time (around 250 and 50 seconds) the influence is stable.
to the others. If they are similar or if some relation Furthermore, as can be seen in Figure 3, the correlation
between them can be deduced, the number of training coefficient of the fitnesses obtained at one time step with
problems could be low (in the best case only one), so respect to those obtained at the final time is higher than 0.9
reducing training time. after 250 seconds for the MDP and after 60 seconds for the
KCP. With the application of the metaheuristics to a training
The influence of the metaheuristic parameters on the fitness problem we are not searching for optimum solutions for this
can be analyzed to determine the parameters with most influ- particular problem, but for satisfactory metaheuristics for the
ence and the ranges where the search should be concentrated. general problem. So, the training time could be reduced to
The evolution of the correlation coefficient of the metaheuristic approximately half the time used in the experiments.
parameters with respect to the fitness is shown in Figures 1 There are other possibilities to reduce the training time. For
(MDP) and 2 (KCP). A negative value indicates that when example, with the 100 metaheuristics experimented with in
the value of the parameter increases the fitness improves 20 time-steps, if the five metaheuristics with the worst fitness
(decreases). The figures on the left show the coefficient for the are discarded at each step, the total training time is halved.
parameters with the greatest positive influence on the fitness, The difference in the behavior with the different problems and
and those on the right correspond to the other parameters. instances considered can be seen in Figure 4, where the mean
The colors identify the basic functions in the schema: blue for fitness of the five metaheuristics discarded at each time step
initialization, red for selection, black for combination, brown is shown. The similarity in the results for GPB is observed in
for improvement, cyan for inclusion, and green for NEIFlex. its flat shape. For the MDP, the slope of the lines seems to be
In the MDP, the parameter which most positively influences related to the number of flexible junctions (Table I) and the
the fitness is not always the same. For ACE it is N EIF lex, difficulty of approaching the optimum.
which also influences PARP, but with no influence on GPB. It
can be logical if we consider the number of flexible junctions V. C ONCLUSIONS AND F UTURE W ORK
in each case, which is 13 for ACE, 3 for PARP and 1 for This paper presents a first approach to the analysis of
GPB (Table I). So, it seems the search by flexing the ligand is the fitness landscape for the problem of finding satisfactory
more advisable for more flexible junctions. Another influential metaheuristics for hard optimization problems. A molecule-
parameter is N BEInc, with a correlation coefficient of around docking problem and a problem of obtaining the values of
-0.2 in ACE and PARP, and a little higher than -0.1 in kinetic constants are used as case studies, but the same
GPB. It is also normal that considering a large number of methodology can be applied to the search for metaheuristics
promising elements will provide better fitness. The percentage for other problems. The metaheuristics considered are im-
of elements to diversify (P EDImp) is the best parameter for plemented with a parameterized schema, which is used for
GPB and PARP, and the value is slightly higher than -0.2 in the development of a hyperheuristic which searches in the
ACE. So, it seems that diversification is better than exploring space of metaheuristics. The fitness for each metaheuristic
the neighborhood of promising metaheuristics. Surprisingly, is obtained with its application to some training problems.
the combination of non promising elements (N W W Com) The main difficulty in the fitness landscape analysis is the

570
XIII Congreso Español en Metaheurı́sticas y Algoritmos Evolutivos y Bioinspirados

ACE: parameters with the most positive influence GPB: parameters with the most positive influence PARP: parameters with the most positive influence
0.3 0.3
NWEIni NBESel INEIni IIEIni 0.1 INEIni PEIIni
correlation of the parameter with the fitness

correlation of the parameter with the fitness

correlation of the parameter with the fitness


NWESel NWWCom 0.2 NBEIni NWEIni NBEIni NWWCom
0.2 IIEImp PEDImp NBWCom NWWCom PEDImp IIDImp
NEIFlex NBEInc PEDImp NBEInc NEIFlex NBEInc
0
0.1 0.1

0 0 −0.1

−0.1 −0.1 −0.2

−0.2 −0.2
−0.3
−0.3 −0.3
−0.4
50 100 150 200 250 300 350 400 450 500 550 600 50 100 150 200 250 300 350 400 450 500 550 600 50 100 150 200 250 300 350 400 450 500 550 600
ACE: parameters with the most negative influence GPB: parameters with the most negative influence PARP: parameters with the most negative influence

INEIni PEIIni 0.2 PEIIni NBESel


0.4 IIEIni NBEIni NWESel NBBCom
0.15
correlation of the parameter with the fitness

correlation of the parameter with the fitness

correlation of the parameter with the fitness


NBBCom NBWCom PEIImp IIEImp
PEIImp IIDImp 0.15 IIDImp NEIFlex
0.3 IIEIni NMEIni
0.1 NBESel NWESel
0.1 NBBCom NBWCom
0.2 PEIImp IIEImp
0.05 0.05
0.1
0 0
0
−0.05 −0.05
−0.1
−0.1
−0.1
−0.2
50 100 150 200 250 300 350 400 450 500 550 600 50 100 150 200 250 300 350 400 450 500 550 600 50 100 150 200 250 300 350 400 450 500 550 600

Fig. 1. Evolution of the correlation coefficient of the metaheuristic parameters with the fitness, for the MDP, for several execution times for the receptor-ligands
ACE (left), GPB (middle) and PARP (right). Top: the eight parameters with the most direct relation with the fitness after 600 seconds; Bottom: the eight
parameters with the most inverse relation.

EXP1: parameters with the most positive influence EXP2: parameters with the most positive influence EXP3: parameters with the most positive influence

INEIni PEIIni INEIni PEIIni


0 IIEIni NBESel 0.05 IIEIni NBBCom
PEIImp IIEImp 0.05 PEIImp IIEImp
correlation of the parameter with the fitness

correlation of the parameter with the fitness

correlation of the parameter with the fitness

NBEInc NBEInc
0
−0.05
−0.05 0
−0.1
−0.1
−0.05
−0.15 −0.15 INEIni PEIIni
IIEIni NBBCom
−0.1
−0.2 NBWCom PEIImp
−0.2 IIEImp

−0.25 −0.15
−0.25
10 20 30 40 50 60 70 80 90 100 10 20 30 40 50 60 70 80 90 100 10 20 30 40 50 60 70 80 90 100
EXP1: parameters with the most negative influence EXP2: parameters with the most negative influence EXP3: parameters with the most negative influence
0.8
0.6 0.7 0.7
correlation of the parameter with the fitness

correlation of the parameter with the fitness

correlation of the parameter with the fitness

0.5 0.6 0.6


FNEIni NBESel FNEIni NBESel
FNEIni NWESel 0.5 NWESel NWWCom 0.5 NWESel NBWCom
0.4 NBBCom NBWCom PEDImp IDEImp NWWCom PEDImp
NWWCom PEDImp NBEInc IDEImp
IDEImp
0.4 0.4
0.3
0.3 0.3
0.2 0.2 0.2

0.1 0.1 0.1


0 0
0
−0.1 −0.1
10 20 30 40 50 60 70 80 90 100 10 20 30 40 50 60 70 80 90 100 10 20 30 40 50 60 70 80 90 100

Fig. 2. Evolution of the correlation coefficient of the metaheuristic parameters with the fitness, for the KCP, for several execution times for the experiments
EXP1 (left), EXP2 (middle) and EXP3 (right). Top: the seven parameters with the most direct relation with the fitness after 100 seconds; Bottom: the seven
parameters with the most inverse relation.

571
XVIII Conferencia de la Asociación Española para la Inteligencia Artificial

randomness of the application of the metaheuristics, which


MDP
1
makes the surface of the fitness function dependent on the
random execution and on the instances used in the training
0.9 ACE
GPB process. The influence of the parameters and of the training
0.8 PARP
time on the fitness has been experimentally analyzed.
correlation coefficient

0.7
The results of our analysis are being used to guide the
0.6 implementation of hyperheuristics on top of the parameterized
0.5 metaheuristic. More experiments with more instances of the
0.4 case study problems are needed, and similar studies for other
0.3 optimization problems at the bottom of the metaheuristics
0.2 hierarchy will be conducted.
50 100 150 200 250 300 350 400 450 500 550 R EFERENCES
KCP
1 [1] W. Hordijk, “A measure of landscapes,” Evol. Comput., vol. 4, pp. 335–
360, Dec. 1996.
0.9 [2] K. Malan and A. P. Engelbrecht, “A survey of techniques for charac-
EXP1
EXP2
terising fitness landscapes and some possible ways forward,” Inf. Sci.,
vol. 241, pp. 148–163, 2013.
correlation coefficient

EXP3
0.8
[3] P. F. Stadle, “Towards a theory of landscapes,” in Complex Systems and
Binary Networks, vol. 461 of Lecture Notes in Physics, ch. 10, pp. 78–
0.7 163, 2007.
[4] E. López-Camacho, M. J. Garcı́a-Godoy, J. Garcı́a-Nieto, A. J. Nebro,
0.6 and J. F. A. Montes, “Solving molecular flexible docking problems
with metaheuristics: A comparative study,” Appl. Soft Comput., vol. 28,
pp. 379–393, 2015.
0.5
[5] J. Cutillas-Lozano and D. Giménez, “Determination of the kinetic con-
10 20 30 40 50 60 70 80 90 stants of a chemical reaction in heterogeneous phase using parameterized
metaheuristics,” in Proceedings of the International Conference on
Fig. 3. Evolution of the correlation coefficient of the fitness at different time- Computational Science, pp. 787–796, 2013.
steps with respect to the fitness. Top: MDP after 600 seconds; Bottom: KCP [6] F. Almeida, D. Giménez, J.-J. López-Espı́n, and M. Pérez-Pérez, “Pa-
after 100 seconds. rameterised schemes of metaheuristics: basic ideas and applications with
Genetic algorithms, Scatter Search and GRASP,” IEEE Transactions on
Systems, Man and Cybernetics, Part A: Systems and Humans, vol. 43,
no. 3, pp. 570–586, 2013.
[7] J. Cutillas-Lozano, D. Giménez, and F. Almeida, “Hyperheuristics based
MDP on parametrized metaheuristic schemes,” in Proceedings of the Genetic
−300
ACE and Evolutionary Computation Conference, pp. 361–368, 2015.
GPB
PARP [8] J. M. Cecilia, J.-M. Cutillas-Lozano, D. Giménez, and B. Imbernón,
−350
“Exploiting multilevel parallelism on a many-core system for the appli-
cation of hyperheuristics to a molecular docking problem,” The Journal
of Supercomputing, Mar 2017.
final mean fitness

−400
[9] U. Rester, “From virtuality to reality-Virtual screening in lead discovery
and lead optimization: a medicinal chemistry perspective,” Current
−450
Opinion in Drug Discovery & Development, vol. 11, no. 4, pp. 559–
568, 2008.
−500
[10] S. Garcia Sanchez, E. Ramirez Aportela, J. I. Garzón, P. Chacón,
A. S. Montemayor, and R. Cabido, “FRODRUG: A virtual screening
−550 GPU accelerated approach for drug discovery,” in 22nd Euromicro
International Conference on Parallel, Distributed, and Network-Based
50 100 150 200 250 300 350 400 450 500 550 600 Processing, pp. 594–600, 2014.
KCP [11] B. Imbernón, J. M. Cecilia, and D. Giménez, “Enhancing metaheuristic-
4
based virtual screening methods on massively parallel and heterogeneous
EXP1
systems,” in Proceedings of the 7th International Workshop on Program-
3.5 EXP2 ming Models and Applications for Multicores and Manycores, pp. 50–58,
EXP3
2016.
3 [12] E. Yuriev, M. Agostino, and P. A. Ramsland, “Challenges and advances
final mean fitness

in computational docking: 2009 in review,” Journal of Molecular Recog-


nition, vol. 24, no. 2, pp. 149–164, 2011.
2.5 [13] L. N. Plummer, T. M. L. Wigley, and D. L. Parkhurst, “The kinetics of
calcite dissolution in CO2 –water systems at 5 to 60o C and 0.0 to 1.0
2 atm CO2 ,” American Journal of Science, vol. 278, pp. 179–216, 1978.
[14] E. K. Burke, M. Hyde, G. Kendall, G. Ochoa, E. Özcan, and J. Wood-
1.5 ward, A Classification of Hyper-heuristic Approaches, pp. 449–468.
Springer, 2010. In Michel Gendreau, Jean-Yves Potvin, editors, Hand-
10 20 30 40 50 60 70 80 90 100 book of Meta-heuristics.

Fig. 4. Mean of the final fitness of the metaheuristics discarded at different


times-steps. Top: MDP, plot each 30 seconds; Bottom: KCP, plot each 5
seconds.

572
XIII Congreso Español en Metaheurı́sticas y Algoritmos Evolutivos y Bioinspirados

Generador de Planificaciones Conjuntas para


Cuadrante de Rotación de los Conductores de
Autobuses
Eva M. Almansa Aránega Samuel Lopéz Liñán
Dept. Ciencia de la Computación e Inteligencia Artificial Dept. Ciencia de la Computación e Inteligencia Artificial
Universidad de Granada Universidad de Granada
Granada, España Granada, España
Eva.M.Almansa@gmail.com samusanlzl@gmail.com

Francisco José Rodríguez Serrano José Manuel Benítez Sánchez


R&D Coordinator Dept. Ciencia de la Computación e Inteligencia Artificial
SHS Consultores S.L. Universidad de Granada
Sevilla, España Granada, España
fjrodriguez@shsconsultores.es J.M.Benitez@decsai.ugr.es

Abstract—El Problema de Generación de Cuadrante de turnos y descansos con condiciones similares dentro de un
Rotación de los Conductores de Autobuses (PGCRCA) se refiere periodo determinado y su rotación en el siguiente periodo,
a la planificación del horario de trabajo de los conductores a lo según corresponda, hasta completar el tiempo de planificación.
largo de un determinado periodo de tiempo, como por ejemplo
un año. Es un problema de naturaleza NP-duro donde El tipo de problema a resolver, a su vez presenta una
habitualmente existen un número alto de restricciones a cumplir, versión distinta a todas las recogidas en la literatura, diferentes
dificultando las decisiones en cada paso de la construcción de una planificaciones de forma simultánea. Lo cual requiere de una
solución. Existen distintas propuestas de resolución de versiones propuesta de solución específica.
simplificadas en la literatura. En este trabajo abordamos un
problema real con amplia diversidad de restricciones y un Un turno es una secuencia de tareas a lo largo de un día, el
número mucho mayor del recogido en las publicaciones: cual tiene características que lo distinguen del resto, como la
diferentes planificaciones que comparten recursos. Hemos franja horaria y la hora de inicio y fin. La homogeneidad
desarrollado una heurística que resuelve eficazmente todos los (franja horaria) y la continuidad (hora de inicio y fin) se
casos reales planteados por empresas de distinto tamaño del utilizan para valorar la similitud entre los turnos dentro de un
sector. Eficacia y eficiencia de la heurística han sido evaluadas en periodo. Un periodo es el tiempo que determina el siguiente
un extenso conjunto de casos reales y se ha podido constatar las cambio de turno o descanso, puede ser una semana o más de
buenas propiedades computacionales del algoritmo. una, a lo largo de una planificación. Una planificación se
encuentra en un rango desde un fecha determinada y puede
Keywords—cuadrantes de rotación de conductores de comprender hasta un año. Pueden existir varias planificaciones,
autobuses; rotación acíclica; backtracking lo que conlleva un reparto de los recursos, el cuadrante de los
conductores. Cada planificación es independiente de las demás
I. INTRODUCCIÓN con respecto a las características que la definen, como por
ejemplo, la fecha de inicialización y finalización; el tipo de
Dentro de la gestión de transporte de viajeros en trasporte
turnos; o el tipo de conductores que usa. Los tipos de
público (TP), un problema es la asignación del horario de
conductores difieren entre sí en la disponibilidad y/o en sus
trabajo para cada uno de sus conductores de autobuses. El
condiciones laborables. Lo cual describe una variante acíclica
horario de trabajo presenta un alto coste a la empresa. No sólo
del problema de Generación de Cuadrante de Rotación de los
para obtener una correcta asignación de tareas se debe de tener
Conductores de Autobuses (PGCRCA), resultando más
en cuenta el convenio colectivo, sino además la equidad en el
compleja que la variante cíclica, donde no existen diferencias
horario de cada conductor. De este modo, el reparto de tareas
entre las condiciones de los conductores.
repercute directamente en el coste para la empresa y en la
satisfacción de cada conductor. Por lo tanto, PGCRCA es considerado un problema de
optimización multi-objetivo sobre las condiciones para la
La rotación se encuentra en distintos contextos laborables y
satisfacción del conductor y el coste de la empresa.
es uno de los problemas que menos se ha tratado en la literatura
académica en comparación con el problema Cuadrante de El resto del artículo está organizado de la siguiente forma.
Personal (PCP). Su complejidad reside en la asignación de En la Sección II, se presenta la revisión bibliográfica sobre la

573
XVIII Conferencia de la Asociación Española para la Inteligencia Artificial

metodología del PGCRCA. Sección III introduce el problema rotación cíclica y acíclica. Cíclica se refiere cuando los
PGCRCA. Sección IV presenta la propuesta, el planificador de conductores pertenecen a la misma clase y la rotación es
rotación. Sección V proporciona distintos ejemplos con exactamente igual en la línea de trabajo, variando únicamente
diferentes características para ilustrar la aplicación del método la hora de inicio. Acíclica se refiere a que cada conductor tiene
propuesto. Finalmente, las conclusiones se encuentran en la distintas condiciones por lo que existen distintos tipos de
Sección VI. conductores.

II. ESTADO DEL ARTE III. CUADRANTE ROTACIÓN DE CONDUCTORES DE AUTOBUSES


El problema de tener un alto número de restricciones La generación de cuadrantes de rotación es considerada un
implica un aumento del número de decisiones en la generación problema que forma parte de un área clásica (Sistema de
de una planificación. Por lo que para comprobar todas las planificación de transportes) en el campo de la investigación de
posibilidades sería necesaria una búsqueda recursiva, con el operaciones en el ámbito de los sistemas de transportes.
añadido problema del tiempo de complejidad. En [1] define la Tradicionalmente este problema se ha subdividido en varios
complejidad del clásico Problema de Satisfacción de sub-problemas debido a la complejidad del mismo. En la Fig.
Restricciones (PSC) utilizando una búsqueda recursiva. 1, aparecen descritos éstos y el flujo clásico de resolución de
los mismos [9]). A continuación, describiremos de forma
En el PGCRCA, para conseguir un reparto equitativo en la general cada uno de los problemas:
carga de trabajo total hay que tener en cuenta demasiados
factores. La normativa de los conductores implica no sólo las
reglas de su contrato laboral, sino que también hay que
considerar la rotación de los turnos y descansos. Por esta razón,
podemos encontrar distintas formulaciones con diferentes
modelos matemáticos y con diferentes objetivos. Una de las
primeras definiciones que se pueden encontrar en la literatura,
se encuentra en [2] que define el problema como un Multi-level
Bottleneck Assigment (MBA) y demuestra que es NP-duro.
Como propuesta, describe un algoritmo que resuelve de forma
iterativa un conjunto de sub-problemas para obtener una
solución “óptima asintóticamente”. De este modo, se puede
encontrar en la literatura distintos enfoques para tratar de
Fig. 1. Sub-problemas del sistema de planificación de transportes.
resolver este tipo de problema. Algunas propuestas, tales como
en [3] con dos heurísticas evolutivas; y en [4] con una solución 1) Generación de horarios (Timetabling)[10]: Partiendo
basada en la técnica colonia de hormigas comparada con dos de la información sobre el número de líneas y el número de
técnicas, búsqueda tabú y enfriamiento simulado. Otros servicios y/o frecuencias requeridas se generan los horarios de
enfoques como, [5] divide el problema en dos etapas: primero cada una de las líneas. Estos horarios incluyen los trayectos,
resuelve el problema de modo cíclico, es decir, todos los cada uno de los cuales se describe con hora de salida, hora de
conductores son de igual tipo, con iguales condiciones; y llegada, punto de partida y punto de llegada.
segundo aplica una mejora con un algoritmo genético. 2) Planificación de vehículos (Vehicle scheduling
El [6] contiene las definiciones, anotaciones, y propone una problem) [11]: Sobre la base de los trayectos generados en la
taxonomía del problema de Cuadrante de Rotación (PCR). De fase anterior, el objetivo en esta etapa es optimizar el uso de los
este modo, se puede conocer el alcance y diferencias entre vehículos de forma que se cubran todos los trayectos definidos
todas las variantes posibles dentro del contexto del PCR. Al en la etapa anterior y se minimice el coste de operación. Este
igual que se logra comprender la dificultad de la generación de coste de operación viene definido por factores como el número
una solución factible según qué variante estemos tratando. de autobuses necesarios, los kilómetros recorridos, y los
tiempos de espera de los vehículos entre distintos trayectos.
Los [7] y [8] recogen revisiones bibliográficas de distintas 3) Planificación de conductores (Crew/bus-driver
especificaciones del PCR. Por un lado, el [7] propone resolver scheduling Problem) [12]: Una vez se dispone de una
de forma conjunta el PCP y el PCR, basándose en otros asignación de vehículos a los distintos trayectos es necesario
artículos que integran los dos problemas en uno; y la asignar conductores que cubran de forma óptima las tareas
regulación a la hora de asignar turnos para una mayor diarias, esto es, la conducción desde el depósito de vehículos al
satisfacción de los conductores. El modelo consiste en resolver comienzo de la jornada hasta la vuelta al mismo al final de la
los dos problemas de forma relajada inicialmente y luego en jornada. Cada una de estas tareas se puede dividir en sub-tareas
aplicar unas post-optimizaciones para obtener soluciones que vienen definidas por estaciones o puntos en los que es
alternativas que mejoren los resultados hasta llegar al óptimo o posible realizar un cambio de conductor. Por tanto, el resultado
hasta los criterios de parada que se establezcan. La función final es la generación de un conjunto de sub-tareas y su
objetivo que establecen para buscar la equidad entre los asignación a un conductor. Usualmente esta planificación tiene
conductores, es la suma del valor absoluto de la distancia de un horizonte temporal corto, aproximadamente 24 horas.
cada turno (media de horas mensuales trabajadas) a un objetivo 4) Generación de cuadrantes de rotación (Bus crew
de número de horas mensuales. Por otro lado, el [8] en su rostering problem) [12]. En este caso se genera una
propuesta trata conjuntamente las dos variantes del PCR: planificación de los turnos de trabajo con un horizonte

574
XIII Congreso Español en Metaheurı́sticas y Algoritmos Evolutivos y Bioinspirados

temporal más amplio que para el caso anterior, por ejemplo 1  Mantener continuidad en los tipos de turnos durante la
mes o 1 año, aparte de tener en cuenta ciertas restricciones semana.
como puede ser el número de horas de descanso entre dos  Cuadrantes para una o más planificaciones.
turnos de trabajo, número de días libres, etc. El resultado final  Se deben repartir todos los turnos durante el tiempo que
es una secuencia de asignación de tareas diarias para cada dure cada planificación.
conductor que tenga en cuenta las restricciones fijadas y que
consiga minimizar los costes de operación.
IV. PLANIFICADOR DE ROTACIÓN
El PGCRCA se puede formular en los siguientes términos: Denominamos Planificador de Rotación (PlanRot) a la
los servicios a prestar están organizados en un conjunto de propuesta para resolver el problema PGCRCA que hemos
turnos, repartidos por días según un calendario establecido. El desarrollado. PlanRot combina la aplicación de la técnica
personal está compuesto por un conjunto de conductores, con backtracking con distintas etapas de refinamiento (mejora) en
características posiblemente distintas en cuanto a la generación de una solución factible.
disponibilidad (ajena), y tipo de turnos que puede hacer. El
objetivo es asignar cada turno a un conductor de modo que se La Fig. 2 representa un ejemplo de una solución donde cada
optimicen varios criterios y se cumplan una serie de color del círculo indica una franja horaria distinta. Partimos de
restricciones, como por ejemplo, contemplar dedicaciones en una lista de turnos distribuidos a lo largo de los días de la
días laborables y festivos, y respetar días de descanso. planificación. Para cada turno |T| se realiza una búsqueda de
selección del conductor |C| que presente mejores condiciones.
Para generar una solución se tiene una función multi-
objetivo, con prioridad para cada criterio de optimización. Los La Fig. 3 es un ejemplo de la estructura del espacio de
criterios de optimización permiten generar diferentes búsqueda. Ilustra todas las posibles combinaciones que
soluciones por ser flexibles en cada aplicación. Sin embargo, dependen del orden de los turnos y del orden de selección de
las restricciones de los conductores se tienen que cumplir para los conductores. Toda decisión tomada en la asignación de un
considerar la solución como factible. conductor a un turno repercute en la siguiente asignación. De
este modo, el espacio de búsqueda se ve reducido debido a las
A. Criterios de optimización características de cada turno cubierto, dado que restringe en las
siguientes decisiones, al igual que se obtienen valoraciones
En orden de mayor a menor preferencia:
diferentes en los criterios de optimización.
1) Minimizar el número de conductores en el periodo.
Fig. 2. Ejemplo de representación de la solución. Aquellos conductores (C1,
2) Minimizar el número de conductores en la C2 y C3) que mejor cumplan las condiciones son asignados a cada turno (T1, …,
planificación. T6) de la lista que suceden a lo largo de una planificación (Día1, Día2 y Día3).
3) Maximizar el número de conductores que cumplen las
horas en el periodo.
4) Maximizar el número de conductores que cumplen las
horas en las planificaciones.
5) Maximizar el número de descansos continuos.
6) Maximizar el número de asignaciones de turnos en la
misma franja (mañana, tarde o noche) a lo largo del
periodo, homogeneidad.
7) Maximizar el número de turnos con igual
características en cada periodo, continuidad.
8) Maximizar el número de periodos que cumplan la
rotación. Fig. 3. Ejemplo de estructura del espacio de búsqueda. La selección del
orden los conductores y el orden en la asignación de turnos representa el
B. Restricciones de los conductores para ser asignables espacio de búsqueda.
Las restricciones que se han de cumplir son:
 Estar disponible (motivos de no estar disponible serían:
vacaciones, enfermedad, baja laboral, o bien, ausencia).
 Cumplir los requisitos para ser asignable,
compatibilidad con los turnos y tener un estado
asignable (según indique la agenda).
 Cumplir los descansos en el periodo.
 Descanso de al menos 12 horas entre que finaliza un
turno y comienza el siguiente.
 No sobrepasar las horas de trabajo indicadas en el
periodo.
 Rotación de descansos en días laborables.
 Excepciones de línea.

575
XVIII Conferencia de la Asociación Española para la Inteligencia Artificial

A. Heurística. Criterios de optimización Para realizar la poda se utiliza el valor de la mejor solución
Empíricamente, se ha llegado a la conclusión de que la encontrada que es igual al número de conductores (criterios de
ordenación de los turnos es significativa. Por lo que, se optimización 1) y 2)) más una pequeña penalización (criterios
comienza asignando los turnos por semanas completas, de de optimización del 3) al 8)). Esta penalización, siempre un
lunes a domingo (o en su defecto desde el día de inicio de la número racional entre 0 y 1, evalúa otros objetivos secundarios
planificación hasta el domingo). En cada semana se asignan como el que la solución sea poco homogénea (una solución
primero aquellos que se encuentren en los días con mayor homogénea es cuando los conductores realizan turnos del
número de turnos y en caso de que sea igual, se comienza por mismo tipo, mañana o tarde durante una semana y el tiempo de
los turnos del fin de semana. trabajo de los conductores es lo más parecido posible). Estas
penalizaciones están directamente relacionadas con los criterios
Para la selección de un conductor se tienen en cuenta la de optimización:
valoración a partir de los criterios de optimización descritos en
la Sección III. El orden de prioridad en los criterios de  Mayor desviación típica sobre el total de minutos de
optimización del 1) a 5) es fijo. Los criterios 1) y 2) son los trabajo.
más importantes, por lo que la función objetivo se define con la  No homogeneidad.
función minimizar el número de conductores. Es decir, durante  No continuidad.
la generación de la planificación se evalúan distintas  Descansos no continuos.
asignaciones de conductores a un turno, y se selecciona aquella  Incumplimiento de rotación.
que presente el mínimo número de conductores. En el caso de
que existan soluciones con igual número de conductores se C. Métodos de refinamiento
evalúan los criterios de siguiente orden. Se comprobarán en Los métodos de mejora de las soluciones siguen una
orden desde el 3) al 5) mientras que no resulte una asignación heurística específica basada en parte en el algoritmo
con mejora en algún criterio evaluado, y que por tanto, ya no backtracking. El recorrido en el método más complejo se basa
será necesario evaluar con los siguientes criterios: por ejemplo, en asignar un turno específico que no ha sido posible asignar a
si existe una única asignación que presenta mejora con el ningún conductor. Este método intenta asignar el turno al
criterio 3) ya no se evaluarán los criterios 4) y 5). Por otro lado, conductor con menos turnos, de forma que si no es posible
se permite cambiar la prioridad de los criterios de optimización asignarlo entonces comprueba si quitándole un turno a ese
6), 7) y 8). De este modo, se pueden obtener diferentes conductor sería posible asignarlo. Si así fuese, entonces se
soluciones y posteriormente seleccionar aquella qué mejor se quita un turno y se asigna el turno actual. Luego se repite el
ajuste a los criterios de optimización en orden del 1) al 5). mismo procedimiento con el nuevo turno sin asignar que se ha
quitado. Además de éste se aplican otros 3 métodos concretos
B. Backtracking. Sistema de penalización que tratan de mejorar la solución centrándose en cuestiones
La técnica algorítmica backtracking se ha utilizado para la más específicas.
parte principal del problema. Se trata de una técnica exacta que
localiza una solución óptima en un espacio de búsqueda El algoritmo PlanRot realiza una búsqueda con distintos
cuando se representa en forma de árbol. El mecanismo de orden en los criterios de optimización en los criterios 6), 7) y
exploración que usa es una búsqueda en profundidad (post- 8); esto implica que resulten diversas construcciones. En
orden). Para acelerar el proceso de búsqueda emplea una muchos casos, las soluciones presentan periodos de tiempo con
función de poda que permite descartar subárboles (soluciones una incompleta continuidad, homogeneidad e incluso días sin
parciales y todas las soluciones derivadas de esta) sin tener que asignar. Los días sin asignar aparecen en las semanas en las
explorar todo el subárbol. Así cuando un subárbol es que no se ha completado el número máximo de turnos para
descartado, la exploración vuelve un nivel hacia arriba en el asignar los días de descanso. Este fenómeno está provocado
árbol, buscando la siguiente rama a explorar. La exploración de principalmente por dos motivos: uno, la rotación de los turnos
un nodo dado termina cuando se han explorado todos sus hijos. y descansos; y dos, el tiempo mínimo de descanso entre que
La exploración del árbol completo termina cuando se ha finaliza un turno y comienza el siguiente, sobre todo al rotar de
explorado la raíz. Se garantiza así encontrar la solución óptima. domingo al lunes.
Para que el proceso sea computacionalmente factible la La mejora de la calidad de las soluciones se realiza
definición de la función de poda es crítica. Es fundamental, mediante las siguientes etapas:
encontrar una que pode cuanto más mejor. Sin embargo,
considerando que el problema es de naturaleza NP-duro 1) Reasignación de turnos: Los conductores que presentan
siempre existirán casos que obligarán a una exploración muy mayor número días sin asignar se eliminan de la planificación.
amplia del espacio de soluciones, con un coste computacional De este modo todos sus turnos quedan sin asignar. Teniendo en
muy elevado. cuenta que, el número máximo de turnos a asignar deberá de
Para formular el espacio de búsqueda (árbol de búsqueda), ser igual o menor que el número de días sin asignar del resto de
las n-uplas que forman el espacio de soluciones tienen tantas conductores. Mientras sea posible, se realiza el intercambio
componentes como turnos a cubrir. Los valores que puede entre los turnos y los días sin asignar más compatibles.
tomar cada componente son los posibles conductores. De esta 2) Reasignación de turnos intensiva: A partir de la etapa
forma, se incluyen todas las posibles asignaciones entre turnos previa, se determina el tipo de incompatibilidad en aquellos
y conductores disponibles. En cada nivel del árbol se evalúan turnos que no hayan podidos ser reasignados con el fin de
los posibles conductores candidatos a realizarlo.

576
XIII Congreso Español en Metaheurı́sticas y Algoritmos Evolutivos y Bioinspirados

reasignarlos en algún otro conductor. Estas incompatibilidades Caso Descripción Plan Semanas
Rotación Rotación
turnos descansos
se clasifican en los siguientes casos y se realiza el intercambio Rotación
siempre que exista otro conductor con el día libre y compatible 5 1 2 - 1
descansos
al turno a asignar: 6
Agenda
1 1 - -
conductores
 Un conductor tiene todos los días de trabajo asignados.
7 1 tipo de día 1 4 2 1
 Franja horaria.
8 2 tipos de días 1 4 2 1
 Rotación de descansos.
Comienzo a
3) Reasignación de descansos: Recorre cada semana e 9 mitad de la 1 3 1 -
identifica los conductores con descansos discontinuos. Una semana, 15 días
vez localizados, realiza un nuevo recorrido para intercambiar 2 tipos días, 2
10 tipos 1 4 1 1
entre los conductores identificados los días de descanso. Para conductores
realizar el intercambio, al menos tiene que beneficiar a un 3 franjas
11 1 2 1 -
conductor por conseguir los días de descanso continuos. horarias
4) Reasignación de turnos no homogéneos: Recorre cada 2
12 2 1 - -
planificaciones
día y obtiene los turnos no homogéneos de cada conductor y
13 Larga duración 1 18 1 2
realiza intercambio entre otro conductor con turno no
homogéneo. Se selecciona la mejor combinación de 14 Año completo 1 52 1 2
intercambio entre turnos no homogéneos. 15
3 tipos de
1 2 1 1
conductor
V. RESULTADOS EXPERIMENTALES 16
3
3 2 1 1
planificaciones
Se ha aplicado PlanRot sobre casos reales planteados por 4
17 4 2 1 1
empresas. Estos casos difieren entre sí en el tamaño, como por planificaciones
ejemplo, número de turnos; número de semanas; tipos de 18 30 semanas 1 30 1 2
conductores; o número de planificaciones.
19 40 semanas 1 30 1 2
La TABLA I. muestra la descripción de cada caso:
característica más descriptiva del caso real; el número de 20 50 semanas 1 50 1 1
planificaciones a resolver; el número de semanas del cuadrante; Distintos
el número de rotaciones de turnos por periodo; y las rotaciones 21 periodos (2, 3 y 3 30 1 1
4 semanas)
por semanas en los descansos en días laborables. Los casos de
prueba se encuentran ordenados de menor a mayor
complejidad.
TABLA II. SOLUCIONES
La TABLA II. contiene los resultados de las soluciones
obtenidas comparadas con las soluciones óptimas de cada caso; Nº
Nº óptimo
PlanRot
Tiempo
y el computo de procesamiento en segundos. El número óptimo conductores (seg)
de conductores se ha obtenido analizando las posibles 1 10 10 5.914
combinaciones. Asimismo, el algoritmo PlanRot encuentra en 2 9 9 4.506
todos los casos una solución óptima con el mínimo número de
conductores necesario. En general, los casos de prueba que 3 10 10 9.667
necesitan menos de 10 segundos para obtener una respuesta, 4 10 10 11.874
son aquellos los que sólo utilizan el método heurístico con los
criterios de optimización. El resto presentan mayor tiempo de 5 10 10 8.432
cómputo por ser necesario aplicar el sistema de refinamiento, 6 11 11 7.111
con un máximo de menos de 2 minutos.
7 10 10 9.469

8 9 9 8.533

TABLA I. INFORMACIÓN DE LOS CASOS REALES 9 8 8 9.142

Rotación Rotación 10 8 8 4.285


Caso Descripción Plan Semanas
turnos descansos
11 13 13 6.386
1 Asignación 1 2 - -
2 tipos de días: 12 16 16 5.722
2 1 1 - -
laborable y no 13 10 10 24.787
2 tipos de
3 1 1 - -
conductores 14 18 18 30.895
Comienzo a
4 mitad de la 1 3 - - 15 10 10 5.144
semana, 15 días

577
XVIII Conferencia de la Asociación Española para la Inteligencia Artificial


Nº óptimo
PlanRot
Tiempo BIBLIOGRAFÍA
conductores (seg)
[1] Marek, Victor W., y Jeffrey B. Remmel. “The complexity of recursive
16 20 20 10.054 constraint satisfaction problems.” Annals of Pure and Applied Logic 161
(2009): 447-457.
17 30 30 7.164
[2] Carraresi, P., y G. Gallo. “A multi-level bottleneck assignment approach
18 10 10 63.492 to the bus riv rs rost rin pro l m ” European Journal of Operational
Research 16 (1984): 163-173.
19 10 10 83.022 [3] Xie, Lin, “Metaheuristics approach for solving multi-objective crew
rostering problem in public transit,” 2013.
21 10 10 101.888
[4] Moz, Margarida, Ana Respcio, y Margarida Vaz Pato, “Bi-objective
evolutionary heuristics for bus driver rostering,” Public Transport
(Springer Nature) 1 (aug 2009): 189-210.
VI. CONCLUSIONES [5] Ma, Jihui, Tao Liu, y W nyi Zhan , “A Genetic Algorithm Approach to
the Balanced Bus Crew Rostering Problem,” Journal of Traffic and
En este trabajo hemos abordado el problema PGCRCA. Se Logistics Engineering Vol 2 (2014).
trata de una variante más compleja de un problema de [6] Ernst, A. T., H. Jiang, M. Krishnamoorthy, y D. Sier, “Staff scheduling
naturaleza NP-duro. La versión estudiada considera distintos and rostering: A review of applications, methods and models,” European
Journal of Operational Research (Elsevier BV) 153 (feb 2004): 3-27.
tipos de conductores y varias planificaciones simultáneamente.
Para resolverlo de forma eficaz hemos propuesto una heurística [7] Valdes, Vera, y Victor Andres, “Integrating Crew Scheduling and
Rostering Problems,” Ph.D. dissertation, alma, 2010.
basada en backtracking que combina distintos métodos de
[8] Xie, Lin, y Leena Suhl, “Cyclic and non-cyclic crew rostering problems
refinamiento. La evaluación experimental permite comprobar in public bus transit.,” {OR} Spectrum (Springer Nature) 37 (apr 2014):
la eficacia y eficiencia de la propuesta sobre un nutrido 99-136.
conjunto de casos reales. [9] Fr lin , R , “Mo ls an T chniqu s for Int ratin V hicl an Cr w
Sch ulin ” Ph D th sis, Tin r n Institut , Erasmus Univ rsity
Rotterdam (1997).
AGRADECIMIENTOS
[10] Ibarra-Rojas, Omar J., y Yasmin A. Rios-Solis. “Synchronization of us
Este trabajo ha sido parcialmente financiado por los tim ta lin ” Transportation Research Part B: Methodological 46
proyectos del Ministerio de Economía y Competitividad (2012): 599-614.
TIN2016–81113–R y de Excelencia de la Junta de Andalucía, [11] Park, Yang-Byun “A hy ri n tic al orithm for th v hicl
P12–TIC–2958. sch ulin pro l m with u tim s an tim a lin s ” International
Journal of Production Economics 73 (2001): 175-188.
[12] Ma, Ji Hui, Tao Liu, y Wei Guan. “Solvin Balanc Bus Cr w
Rost rin Pro l m with G n tic Al orithm ” Sustainable Cities
Development and Environment Protection. Trans Tech Publications,
2013. 2070-2074.

578
XIII Congreso Español
de Metaheurísticas,
Algoritmos Evolutivos y
Bioinspirados
(XIII MAEB)

MAEB 4: SESIÓN E SPECIAL:


SMART C ITIES
XIII Congreso Español en Metaheurı́sticas y Algoritmos Evolutivos y Bioinspirados

Monitorización y clasificación de estancias en


edificios empleando captación de comunicaciones
inalámbricas de dispositivos inteligentes.
Antonio Fernández Ares Marı́a Isabel Garcı́a Arenas Pedro A. Castillo Valdivieso
Universidad de Granada Universidad de Granada Universidad de Granada
Granada, Spain Granada, Spain Granada, Spain
antares@ugr.es mgarenas@ugr.es pacv@ugr.es

Resumen—La monitorización de personas y sus movimientos En este artı́culo se propone el empleo de las captación
es un área de interés en las smart cities ya que estas enfrentan de las comunicaciones inalámbricas WiFi emitidas por los
el problema de la superpoblación. Los actuales sistemas de dispositivos inteligentes, como los smartphones, portados habi-
monitorización de personas, basados en cámaras de vigilancia,
son muy intrusivos, atentan a la privacidad y son costosos. En tualmente por las personas. La información capturada permite
este artı́culo se propone el empleo de la captación de las comuni- identificar al dispositivo de forma única y unı́voca, lo que
caciones inalámbricas emitidas por los dispositivos inteligentes permite reconocer al mismo dispositivo en futuras visitas. Las
portados por los ciudadanos como fuente de datos para los capturas sucesivas de un dispositivo en un lugar acotado, per-
estudios de la monitorización de personas empleando inteligencia mite delimitar temporalmente la estancia de dicho dispositivo,
computacional para la extracción de patrones de comportamiento
habituales. Para ello, se presenta un caso de uso aplicado a la y por tanto a su portador.
monitorización del acceso a un edificio público y la obtención Empleando esta fuente de información se puede obtener
de los momentos que garantizan la mayor disponibilidad para la cuantı́a de visitantes ası́ como la duración de cada visita.
emplazar eventos no regulares. Los resultados muestran que la Mediante el empleo de técnicas de inteligencia computacional,
captación de comunicaciones inalámbricas y la aplicación de
se puede extraer conocimiento sobre el comportamiento y
técnicas de aprendizaje máquina permiten estudiar y extraer
conocimiento sobre el los movimientos de las personas. naturaleza de las distintas visitas, permitiendo obtener los
Index Terms—Ciudades Inteligentes, Monitorización de perso- hábitos o patrones distintivos de cada tipo de visitante.
nas, Comunicaciones inalámbricas, WiFi, Smartphones Para estudiar el potencial de la fuente de datos se emplea
el sistema Mobywit para monitorizar una de las entradas de
I. I NTRODUCCI ÓN la ETSIIT1 de la Universidad de Granada. Con los datos ob-
La monitorización de personas ha cobrado una gran impor- tenidos mediante la detección de los dispositivos inteligentes,
tancia en el entorno de las smart cities debido a que muchos de se realizan estudios que permitan cuantificar el número de
los problemas a los que se enfrentan las ciudades están origi- visitantes recibidos en la escuela y mediante el empleo de
nados por el aumento significativo de la población, debido a la algoritmos de agrupación ser capaces de extraer patrones que
superpoblación de las áreas metropolitanas. Proveer de fuentes definan los comportamientos de los distintos visitantes.
de datos a las ciudades del futuro sobre los movimientos de las Los resultados muestran que las estancias reincidentes a lo
personas que viven en ellas permite una mejor gestión de los largo de varios dı́as se pueden agrupar empleando algoritmos
recursos, lo que repercute positivamente en la calidad de los de machine learning o aprendizaje máquina para extraer
servicios ofertados. Este mismo principio puede aplicarse a los patrones habituales de comportamiento, patrones que sirven
edificios de las smart cities, obteniendo información real sobre para comprender mejor la ocupación y saturación del edificio
como interaccionan las personas con dicho edificio y emplear en los distintos momentos del dı́a.
la información recogida para la extracción de información y El resto del artı́culo se estructura como sigue. En la Sección
conocimiento por medio de la inteligencia computacional. II se presenta un breve estado del arte sobre la monitorización
Sin embargo, las tecnologı́as para el conteo y monitoriza- de personas. En la Sección III se presenta la metodologı́a del
ción de personas actuales se encuentran bastante limitadas. sistema ası́ como el escenario empleado. En la Sección IV
Los sistemas que son capaces de reconocer individualmente se recogen los experimentos realizados, incluyendo análisis
a las personas son intrusivos y muy costosos tanto monetaria de las estancias, ası́ como los resultados del agrupamiento
como computacionalmente, pues se basan principalmente en de las estancias. La Sección V debate sobre los resultados
sistemas basados en reconocimiento de imágenes capturadas obtenidos en los experimentos. Finalmente la Sección VI alega
por cámaras. Los sistemas más simples y baratos, como placas
de presión, tornos o haces láser, no son capaces de reconocer 1 Escuela Técnica Superior de Ingenierı́as en Informática y Telecomunica-
visitas sucesivas de un mismo individuo. ciones

581
XVIII Conferencia de la Asociación Española para la Inteligencia Artificial

la viabilidad de la captación de comunicaciones inalámbricas III. M ETODOLOG ÍA


WiFi para el estudio de la naturaleza de las estancias de las Para la captación de las comunicaciones inalámbricas WiFi
personas en edificios y su importancia en el escenario de un se emplea el sistema Mobywit [19], que permite identificar
edificio inteligente dentro de una smart city. cada dispositivo de forma unı́voca mediante un hash de la
dirección MAC de la interfaz de red WiFi. La detección de
II. E STADO DEL ARTE un dispositivo en las inmediaciones del nodo es denominada
Habitualmente la monitorización de personas ha estado paso, al cual se le asigna una ventana temporal con las marcas
asociada a los entornos de marketing y estudios de mercado[1] de tiempo de la primera y última detección consecutiva. En la
sin embargo en los últimos años ha cobrado vital importancia Figura 1 se puede observar un diagrama del nodo Mobywit
en los entornos de las smart city [2]. emplazado. Es esperable que un mismo dispositivo pueda
Las tecnologı́as para el conteo y monitorización de personas pasar a lo largo del dı́a varias veces por las inmediaciones
han evolucionado desde los sistemas de detección de vehı́culos del nodo. Para cada dispositivo y cada dı́a, se calcula en base
[3], resultando en un problema más complejo. Esto se debe a los sucesivos pasos, el instante de tiempo de entrada y salida
principalmente a que las personas no tienen elementos distin- al centro, siendo el primer y último paso detectado por el nodo.
tivos únicos fácilmente reconocibles por procesamiento OCR2
de imágenes, al contrario que los coches con sus matrı́culas
[4] y porque sus desplazamientos no se encuentran acotados
por carriles y direcciones prefijados [5] como en los vehı́culos.
Distintas tecnologı́as han sido empleadas para la contabi-
lización de personas, como los rayos infrarrojos [6] o las
cámaras térmicas [7], [8]. Las imágenes captadas por cámaras
de vı́deo han sido igualmente empleadas [9], [10], siendo
algunos sistemas incluso capaces de reconocer a la persona con
tasas de acierto aceptables [11]. Sin embargo, estos sistemas
tiene numerosos impedimentos como su alto coste [12] y la
vulneración de libertades individuales y privacidad [13].
El empleo de los dispositivos inteligentes para la detección
de personas es un área de investigación en auge, debido a que
su proliferación en los ciudadanos es significativa. Se estima
que en España el 83 % de la población posee un smartphone3 .
La detección de estos dispositivos por medio de sus co- Figura 1. Emplazamiento del Nodo Mobywit en la Escuela. En la parte
municaciones Bluetooth ha sido empleada con éxito para la derecha de la fotografı́a, fuera de plano, se encuentra la puerta principal.La
monitorización de personas tanto en pequeños edificios [14], puerta en plano de la derecha
grandes [15] o ante eventos culturales multitudinarios [16].
Esto posible debido a que el protocolo Bluetooth dispone de El escenario de estudio es la Escuela Superior de Ingenierı́as
mecanismos nativos para la detección de dispositivos cercanos, en Informática y Telecomunicaciones de la Universidad de
al estar diseñado para las comunicaciones device-to-device4 . Granada. Un nodo Mobywit fue emplazado en la entrada
Las comunicaciones WiFi, en cambio, carecen de mecanis- principal del edificio7 . Dicha escuela tiene matriculados 2119
mos nativos para la detección de dispositivos, al estar basadas alumnos y en ella trabajan unas 250 personas8 . Las clases tiene
en comunicaciones por infraestructura. Sin embargo, es posible una hora de duración, y comienzan a las 8:30.
detectar las dispositivos que emplean WiFi capturando los Durante un periodo de un mes comprendido entre el 3
paquetes que emiten [17]. Este tipo de estudios está menos de Marzo y el 3 de Abril de 2018, incluyendo tanto pe-
extendido, pero ha sido empleado como pruebas de concepto riodos lectivos como no lectivos, el nodo Mobywit cap-
en escenarios como el Sonar 20155 o la Sagrada Familia6 . turó 1 884 219,13M B de tramas WiFi. A partir del procesa-
Desde el ámbito académico, la captación de comunicaciones miento en tiempo real, el nodo estableció los pasos de cada
WiFi para la monitorización de personas ha sido empleada con dispositivo por las inmediaciones del nodo.
éxito para medir masas de personas [18], tanto en exteriores En base a la información en pasos obtenida por el pro-
[19] como interiores [20]. cesamiento de dichas tramas, se propone realizar estudios y
aplicar técnicas de aprendizaje máquina para obtener informa-
2 Optical Character Recognition o Reconocimiento óptico de caracteres ción sobre los hábitos y patrones de comportamiento de los
3 Según el último informe anual sobre la sociedad de la información visitantes.
en España elaborado por telefónica http://www.fundaciontelefonica.com/arte
cultura/publicaciones-listado/pagina-item-publicaciones/itempubli/483/ 7 Aunque una puerta secundaria, al ser totalmente exterior, no pudo ser
4 Comunicaciones entre dispositivos sin necesidad de estaciones base.
monitorizada al no poder emplazarse el nodo.
5 Por el BSC en el proyecto “We know what you did last Sonar” http: 8 Según la memoria académica del curso 2017/2018 https:
//www.bsc.es/viz/whatyoudid/now.html //secretariageneral.ugr.es/pages/memorias/academica/20162017/docencia/
6 D-lab https://d-lab.tech/project-1/ centros/ doc/24/!/download

582
XIII Congreso Español en Metaheurı́sticas y Algoritmos Evolutivos y Bioinspirados

IV. E XPERIMENTOS 4 registra la duración de todas las visitas en las que se ha


registrado tanto la entrada como la salida.
Los pasos obtenidos se resumen y contabilizan en base a un
intervalo de muestreo. La Figura 2 muestra el resultado de este 1200
resumen para tamaños de muestreo de un dı́a y una hora. De

Personas Detectadas
esta forma, se puede observar como el periodo vacacional de 900

Semana Santa la afluencia de gente se reduce drásticamente, 600


de igual manera que durante los fines de semana.
300

3000 0
Periodo no lectivo
2000 0 1 2 3 4 5 6 7 8 9 10 11 12

1000 Horas totales en la ETSIIT


0
2018-03-05 2018-03-12 2018-03-19 2018-03-26 2018-04-02
Figura 4. Duración de las visitas registradas. La mayorı́a de los visitantes
están entre una y dos horas en la escuela.
400

300

200
Conociendo tanto la hora de entrada como la hora de
100
salida de cada vistante, se ejecuta el algoritmos de agrupa-
0
miento FarthestFirst [21]. Para facilitar la interpretación de
2018-03-05 2018-03-12 2018-03-19 2018-03-26 2018-04-02 los resultados del algoritmos de agrupamiento lidiando con
fechas y horas, las horas de entrada y salida se resumen en
Figura 2. Conjunto de datos obtenidos durante un mes de monitoriación. 5 categorı́as divisorias obtenidas como boundaires o fronteras
La gráfica superior presenta el número de personas detectadas cada dı́a. La
inferior presenta la misma información pero por cada hora. del agrupador. Estas divisiones se recogen en la Tabla I.

Tabla I
Esta misma información puede ser mostrada para cada dı́a. I NTERPRETACI ÓN DE LOS DIVISORES DE HORAS DEL AGRUPADOR .
La Figura 3 el número de personas detectadas para distintos Madrugada ∈ (0, 1, 2, 3, 4, 5, 6]
intervalos de muestreo de un dı́a. Se observa como los cambios Mañana ∈ (7, 8, 9, 10, 11]
de clase afectan al número de personas detectadas. Mediodı́a ∈ (12, 13, 14, 15]
Tarde ∈ (16, 17, 18, 19, 20]
Noche ∈ (21, 22, 23]
2018/03/22

12:15
12:15
14:15
14:15
17:30 El algoritmo de agrupamiento establece cinco clases de
150
(15 minutos)

14:30
14:30 visitantes (notadas mediante  , ◦ , △ , ⋄ y ⊠ ), más
100

una clase auxiliar para las visitas no clasificables o sin un


50

patrón común extraı́do notado mediante + . Adicionalmente,


0

07:00 08:00 09:00 10:00 11:00 12:00 13:00 14:00 15:00 16:00 17:00 18:00 19:00 20:00 21:00 22:00 23:00 00:00
Fecha en este artı́culo se notará con el sı́mbolo × aquellas visitas
registradas mediante un único paso cercano al sensor. En la
75 100 125

Tabla II se recogen la asignación de cada divisor de hora a


(5 minutos)

cada clase calculada mediante del algoritmo de agrupamiento.


50
25

Tabla II
0

07:00 08:00 09:00 10:00 11:00 12:00 13:00 14:00 15:00 16:00 17:00 18:00 19:00 20:00 21:00 22:00 23:00 00:00
Fecha C LASES RESULTANTES DEL AGRUPAMIENTO DE CATEGOR ÍAS
0.50 0.75 1.00 1.25 1.50

13:29
13:29 13:30
13:30 13:31
13:31 13:32 14:15
14:15 14:16
14:16
(1 minuto)

13:32
Clase Entrada Salida
 g1 Mañana Mediodı́a
o g2 Mediodı́a Mediodı́a
07:00 08:00 09:00 10:00 11:00 12:00 13:00 14:00 15:00 16:00 17:00 18:00 19:00 20:00 21:00 22:00 23:00 00:00
Fecha
△ g3 Tarde Tarde
⋄ g4 Mediodı́a Tarde
Dispositivos simultáneos detectados ⊠ g5 Mañana Tarde
+ - * *
Figura 3. Vista detallada de un dı́a monitorizado, empleando tres tamaños de
muestreo: 15 minutos, 5 minutos y 1 minuto. Se han remarcado los valores Para la visita de cada dı́a de cada persona distinta, se
que han sido considerados anómalos o extremos en las series. Para la ventana dispone de la hora de entrada, la hora de salida y la categorı́a
de 1 minuto, se emplea únicamente el grado de color como magnitud.
que le ha asignada mediante el algoritmo de agrupamiento. En
la Figura 8 se puede ver como se relacionan las tres variables
Se espera que cada visitante al edificio registre al menos una entre ellas. Las regiones con patrones comunes de entrada y
entrada y una salida del mismo, siendo registradas ambas en salida han sido asignadas a la misma clase por el algoritmo
el caso de realizarlas por la puerta monitorizada. Esto permite de agrupamiento. Debido al libre albedrı́o de las personas,
calcular para cada dı́a el tiempo medio de visitas. La Figura hay visitas que no corresponden a un patrón compartido.

583
XVIII Conferencia de la Asociación Española para la Inteligencia Artificial

Dichas visitas son notadas mediante + y descartadas por el detectados varios dı́as distintos o de forma reincidente. Esta
agrupador, en lugar de intentar a ajustarlas de forma artificial regularidad individual, supone a su vez un patrón en si mismo.
a algún patrón o clase ya existente.

Nº personas detectadas
2018-03-22 400

23:00
300
22:00

21:00 200
20:00
100
19:00

18:00
0
17:00
Hora de entrada en la ETSIIT

Clase 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 31 32
16:00 - Días reincidentes
¿?
15:00
g1
14:00
g2 Figura 7. Representación del numero de visitantes reincidentes.
13:00 g3

12:00 g4
g5
11:00
Dada la capacidad del sistema Mobywit para ser capaz de
10:00

09:00
reconocer de forma reincidente al mismo dispositivo y por
08:00 tanto a la misma persona, se pueden extraer patrones en los
07:00
hábitos de una misma persona a lo largo de varios dı́as. La
06:00

05:00
Figura 8 muestra para un subconjunto de personas reincidentes
05:00 06:00 07:00 08:00 09:00 10:00 11:00 12:00 13:00 14:00 15:00 16:00 17:00 18:00 19:00 20:00 21:00 22:00 23:00
más de 10 veces, la clase asignada a cada una de sus diferentes
Hora de salida en la ETSIIT visitas en diferentes dı́as. En dicha gráfica se puede como
las personas se ajustan en su mayorı́a a un patrón común de
Figura 5. Relación entre la hora de entrada, la hora de salida y la clase
asignada por el agrupador para todas las visitas de un dı́a determinado.
comportamiento a lo largo del tiempo.

FFCBD4...
FEE12C...
El algoritmo de agrupamiento se aplica a todas las visitas de FE9888...
FB54CB...
F71E7D...
todos los dispositivos detectados a lo largo de todo el periodo. F71CEC...
F42BDE...
EFC54D...
La figura 6 recoge la relación entre la hora de entrada, la hora EEEA13...
E62A0F...
E54F14...
de salida y la categorı́a asignada a la visita para todos los dı́as E529D2...
E2EED1...
E1ADA1...
D7B33C...
que han sido monitorizados por el nodo. D7929B...
D71C27...
D09DEE...
Identificador HASH de la persona detectada

CDC5D6...
CDC1BC...
C67BA7...
C6555C...
2018-03-03 2018-03-04 2018-03-05 2018-03-06 2018-03-07 2018-03-08 2018-03-09 B745FB...
B6DE89...
B4762E...
20 B0EA85...
AED2F7...
15 A41887...
9DC73F...
10 9B52A9...
8F446D...
8E87DD...
8D190C...
2018-03-10 2018-03-11 2018-03-12 2018-03-13 2018-03-14 2018-03-15 2018-03-16 8B0F2A...
881A21...
865325...
20 83A3B7...
820943...
15 7D49B8...
797003...
Hora de entrada en la ETSIIT

10 7694C1...
7351BE...
6E7CE2...
6C3246...
2018-03-17 2018-03-18 2018-03-19 2018-03-20 2018-03-21 2018-03-22 2018-03-23 68648D...
5F841F...
589C2E...
20 5578AF...
524BF5...
15 4CE3CF...
45678F...
10 452E70...
402055...
39FEBA...
33B767...
2018-03-24 2018-03-25 2018-03-26 2018-03-27 2018-03-28 2018-03-29 2018-03-30 2D263B...
2BFDBA...
2B2362...
20 274B0D...
2694EB...
15 259D4D...
1AB029...
10 18B727...
1873E5...
14E578...
10 15 20 10 15 20 10 15 20 10A05E...
2018-03-31 2018-04-01 2018-04-02 2018-04-03 101504...
0FBDB2...
0F3D5E...
20 0DD68C...
- g2 g5 08CD5C...
15 03C6B8...
Clase ¿? g3 03223D...
10
g1 g4 mar 05 mar 12 mar 19 mar 26 abr 02
10 15 20 10 15 20 10 15 20 10 15 20
Fecha
Hora de salida en la ETSIIT

- g1 g3 g5
Figura 6. Relación entre la hora de entrada, la hora de salida y la clase Clase
¿? g2 g4
asignada por el agrupador para todos las visitas del conjunto de datos.

Es esperable que los visitantes acudan de forma regular a Figura 8. Representación de la clase asignada en diferentes visitas para un
subconjunto de visitantes los reincidentes más de diez veces. Se observa como
la escuela, ya sea porque estudien o trabajen en ella. En la las visitas sucesivas de la mayorı́a de los visitantes son de la misma clase.
Figura 7 se puede ver el número de visitantes que han sido

584
XIII Congreso Español en Metaheurı́sticas y Algoritmos Evolutivos y Bioinspirados

No todas las visitas de una misma persona tiene porque ser Todas las clases g1 g2 g3 g4 g5

7:30 7:30

clasificadas con la misma categorı́a, sin embargo si puede ser 8:30


39% 29% 39% 42% 33%
8:30
56% 47% 46% 53% 46% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 16% 9% 26% 20% 20%

definida una categorı́a predominante para cada persona de la 9:30


72% 61% 70% 72% 64%
9:30
92% 72% 84% 81% 83% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 49% 49% 50% 52% 52%

cual se extraiga un patrón de comportamiento habitual, aunque 10:30


82% 77% 86% 91% 83%
10:30
93% 86% 100% 100% 94% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 68% 68% 66% 74% 83%

97% 91% 95% 100% 89% 100% 100% 95% 98% 98% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 92% 84% 90% 100% 93%

debido a circunstancias externas ese patrón no sea perfecto. 11:30

100% 100% 100% 99% 100%


11:30

86% 93% 84% 88% 100% 32% 23% 37% 16% 56% 0% 0% 0% 0% 0% 21% 24% 19% 9% 11% 100% 100% 100% 100% 100%

En la Tabla III se presenta la clase predominante de todos los 12:30

91% 97% 100% 94% 95%


12:30

64% 79% 76% 67% 81% 79% 53% 62% 50% 100% 0% 0% 0% 0% 0% 21% 31% 31% 26% 17% 100% 100% 100% 100% 100%
13:30 13:30

visitantes (n ≥ 1) como aquellos reincidentes al menos 10 14:30


80% 83% 88% 92% 74%
14:30
28% 37% 41% 44% 35% 100% 100% 100% 100% 67% 0% 0% 0% 0% 0% 58% 43% 63% 66% 56% 100% 100% 100% 100% 100%

veces (n ≥ 10).

Franja horaria

Franja horaria
68% 68% 68% 67% 58% 1% 7% 2% 4% 4% 50% 38% 63% 41% 22% 0% 0% 0% 0% 0% 89% 73% 87% 100% 78% 100% 100% 100% 100% 100%
15:30 15:30

67% 67% 66% 62% 59% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 31% 58% 62% 54% 14% 100% 100% 100% 100% 100% 92% 91% 94% 92% 97%
16:30 16:30

59% 66% 64% 60% 49% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 67% 90% 100% 100% 57% 89% 100% 88% 85% 61% 72% 82% 88% 80% 83%

Tabla III 17:30

51% 55% 46% 44% 46%


17:30

0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 100% 100% 88% 98% 100% 75% 77% 75% 42% 56% 55% 62% 58% 57% 68%

P ORCENTAJE DE PERSONAS PARA CADA CLASE PREDOMINANTE . 18:30

35% 38% 36% 28% 31%


18:30

0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 67% 59% 75% 41% 100% 46% 66% 56% 26% 39% 37% 35% 44% 37% 37%
19:30 19:30

Clase Predominancia 20:30


9% 14% 8% 11% 9%
20:30
0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 7% 17% 12% 0% 14% 13% 16% 25% 9% 17% 4% 5% 6% 8% 7%

Nombre n≥1 n ≥ 10 21:30


1% 2% 0% 4% 1%
21:30
0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0%

 g1 28,5 % 43,8 % 22:30


1% 1% 0% 3% 0%
22:30
0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0%

o g2 17,9 % 4,1 % 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0%

△ g3 18,1 % 4,1 % lun mar mié jue vie lun mar mié jue vie lun mar mié jue vie lun mar mié jue vie lun mar mié jue vie lun mar mié jue vie

⋄ g4 11,3 % 10,9 % Día de la Semana Día de la Semana

Ocupación
⊠ g5 8,1 % 31,5 % 0% 25% 50% 75%100%

+ - 15,8 % 5,4
Figura 10. Disponibilidad de horarios para la realización de eventos en base
Estos patrones de comportamiento pueden ser estudiados a la asistencia a la escuela, tanto genérica como en base los distintos grupos
de usuarios detectados. La ocupación se ha normalizado para cada dı́a a una
a lo largo del tiempo para ver la influencia de factores escala entre el 0 y el 100 % del máximo diario.
periódicos, como los dı́as de la semana, los periodos de
exámenes o los cuatrimestres en los que se divide el curso.
Por ejemplo la figura 9 presenta los horarios habituales para V. R ESULTADOS
cada persona detectada a lo largo de las distintas semana.
Se observa que la clase  asignada a las personas que
7:30
8:30
entran por la mañana y salen al medio dı́a es la que ha
9:30
10:30
11:30
12:30
13:30
sido asignada a un mayor porcentaje de gente, indicando
14:30
15:30
16:30
17:30
18:30
que la mayorı́a de las personas que visitan la escuela lo
19:30
20:30
21:30
7:30
8:30
hacen solo en horario de mañana. Además este patrón se
9:30
10:30
11:30
12:30
muestra tanto en aquellas visitas puntuales, y se acentúa
13:30
14:30
15:30
16:30
17:30
en las visitas reincidentes. Para los reincidentes, la segunda
18:30
19:30
20:30
21:30
7:30
clase con mayor porcentaje ( ⊠ ) es aquella asignada a los
8:30
9:30
10:30
11:30
visitantes que llegan por la mañana y se marchan por la tarde,
Hora

12:30
13:30
14:30
15:30
16:30
17:30
constituyendo aproximadamente un tercio de los visitantes
18:30
19:30
20:30
21:30
reincidentes. Un 5 % de las visitas, se produce únicamente al
7:30
8:30
9:30
10:30
11:30
mediodı́a ( ◦ ) posiblemente por gente que únicamente emplea
12:30
13:30
14:30
15:30
16:30
los servicios de comedores del edificio. Los visitantes que
17:30
18:30
19:30
20:30
21:30
llegan al mediodı́a y se van por la tarde ( ⋄ ) suponen un
mar

mar

10 % de las visitas. Por último, sólo un 5 % de los visitantes


mié

mié
lun

jue

lun

jue
vie

vie

7:30
8:30
9:30
10:30
11:30
12:30
13:30
14:30
15:30
realizan su visita únicamente durante horario de tarde ( △ ).
16:30
17:30
18:30
19:30
20:30
En cuanto a la disponibilidad de horario, en términos
21:30

generales la mayor disponibilidad se presenta los jueves a


mar

mar

mar

mar

mar

mar

mar

mar

mar

mar

mar

mar

mar
mié

mié

mié

mié

mié

mié

mié

mié

mié

mié

mié

mié

mié
lun

jue

lun

jue

lun

jue

lun

jue

lun

jue

lun

jue

lun

jue

lun

jue

lun

jue

lun

jue

lun

jue

lun

jue

lun

jue
vie

vie

vie

vie

vie

vie

vie

vie

vie

vie

vie

vie

vie

Día de la semana
partir de las 18:30. Para los distintos turnos, la asistencia por la
Figura 9. Horarios semanales de las 73 personas detectadas reincidentes más mañana presentará mayor disponibilidad los martes de hasta
representativas. El color indica la clase en la que la que cada estancia ha sido las 11:30, en los turnos de tarde los jueves a partir 18:30.
clasificada. Cada visita se superpone con una capa de transparencia del 25 %.
La codificación de colores es la empleada en la Tabla III. Estos rangos de horas y dı́as son por tanto el momento idóneo
para emplazar cualquier evento que no interrumpa la docencia
habitual, obtenida en base a los patrones de comportamiento
Esta información puede ser útil para decidir a que ho-
habituales de los alumnos reincidentes. O en caso de querer
ra emplazar eventos maximizando la disponibilidad de los
atraer a toda la audiencia posible, elegir dos periodos de
alumnos, escogiendo aquellas horas en las que habitualmente
tiempo que permitan la afluencia de ambos tipos de visitantes
estén habitualmente a punto de irse de la facultad. Empleando
disjuntos, repitiendo el evento en los dos intervalos de tiempo
la información del agrupador, se puede elegir intervalos de
obtenidos.
tiempos libres que beneficien a un tipo de visitante concreto,
como se muestra en la Figura 10.

585
XVIII Conferencia de la Asociación Española para la Inteligencia Artificial

VI. C ONCLUSIONES [7] J. W. Davis and V. Sharma, “Robust background-subtraction for person
detection in thermal imagery.” in CVPR Workshops, 2004, p. 128.
Si bien la información obtenida no es más que una muestra [8] K. Hashimoto, K. Morinaka, N. Yoshiike, C. Kawaguchi, and S. Mat-
de la viabilidad de la captación de comunicaciones inalámbri- sueda, “People count system using multi-sensing application,” in Solid
State Sensors and Actuators, 1997. TRANSDUCERS ’97 Chicago., 1997
cas WiFi para la monitorización y extración de patrones de International Conference on, vol. 2, Jun 1997, pp. 1291–1294 vol.2.
comportamientos de las estancias de las personas en edificios, [9] H. Celik, A. Hanjalic, and E. Hendriks, “Towards a robust solution
puede resultar una herramienta muy útil para la gestión eficien- to people counting,” in Image Processing, 2006 IEEE International
Conference on, Oct 2006, pp. 2401–2404.
te de los recursos de dicho edificio. Ası́ como para estudiar el [10] A. Schofield, P. Mehta, and T. Stonham, “A system for counting people
impacto de nuevas medidas en los patrones de comportamiento in video images using neural networks to identify the background
de los visitantes. scene,” Pattern Recognition, vol. 29, no. 8, pp. 1421 – 1428,
1996. [Online]. Available: http://www.sciencedirect.com/science/article/
A modo de ejemplo, en este artı́culo se han determinado pii/0031320395001638
los periodos de mayor disponibilidad de los alumnos para [11] C.-H. Kuo and R. Nevatia, “How does person identity recognition help
la posible asistencia a actividades no regladas, como charlas multi-person tracking?” in Computer Vision and Pattern Recognition
(CVPR), 2011 IEEE Conference on. IEEE, 2011, pp. 1217–1224.
o conferencias, en base a los patrones de comportamiento [12] W. Zhao, R. Chellappa, P. J. Phillips, and A. Rosenfeld, “Face recog-
extraı́dos de las visitas reincidentes. nition: A literature survey,” ACM computing surveys (CSUR), vol. 35,
La potencialidad de la aplicación de técnicas de inteligencia no. 4, pp. 399–458, 2003.
[13] M. L. Gras, “The legal regulation of cctv in europe,” Surveillance &
computacional y análisis de patrones a los datos obtenidos Society, vol. 2, no. 2/3, 2002.
mediante la captación de comunicaciones inalámbricas permite [14] T. Nicolai and H. Kenn, “About the relationship between people and
dotar de fuentes de información baratas, fiables y anónimas discoverable bluetooth devices in urban environments,” in Proceedings
of the 4th international conference on mobile technology, applications,
a las ciudades inteligentes. Fuentes de datos que permitirán and systems and the 1st international symposium on Computer human
optimizar los recursos ajustándolos a los patrones de compor- interaction in mobile technology. ACM, 2007, pp. 72–78.
tamiento aprendidos de las personas que los emplean. [15] J. Weppner and P. Lukowicz, “Bluetooth based collaborative crowd
density estimation with mobile phones,” in Pervasive Computing and
La aplicabilidad del sistema Mobywit en multitud de es- Communications (PerCom), 2013 IEEE International Conference on,
cenarios de escenarios, supone también una futura lı́nea de March 2013, pp. 193–200.
trabajo. El sistema puede ser empleado en cualquier punto [16] A. Morrison, M. Bell, and M. Chalmers, “Visualisation of spectator
activity at stadium events,” in Information Visualisation, 2009 13th
geográfico donde se concentren masas de personas, y extraer International Conference. IEEE, 2009, pp. 219–226.
información sobre el comportamiento de las mismas. Por [17] Y. Chon, S. Kim, S. Lee, D. Kim, Y. Kim, and H. Cha, “Sensing
ejemplo, ofreciendo tiempos de espera hasta ser atendidos en wifi packets in the air: practicality and implications in urban mobility
monitoring,” in Proceedings of the 2014 ACM International Joint
tareas administrativas, monitorizando los recintos habilitados Conference on Pervasive and Ubiquitous Computing. ACM, 2014,
para fumadores o el impacto de la calidad del menú del dı́a pp. 189–200.
en la afluencia de gente en los servicios de comedores. [18] W. Xi, J. Zhao, X.-Y. Li, K. Zhao, S. Tang, X. Liu, and Z. Jiang,
“Electronic frog eye: Counting crowd using wifi,” in INFOCOM, 2014
Proceedings IEEE, April 2014, pp. 361–369.
AGRADECIMIENTOS [19] A. Fernández-Ares, M. Garcia-Arenas, P. A. Castillo, and J. J. Merelo,
“Impact of protests in the number of smart devices in streets: A new
Este trabajo ha sido financiado parcialmente por los proyec- approach to analyze protesters behavior,” in International Conference
tos MOMOFES SPIP2017-02116 (Direción General de Tráfi- on Smart Cities. Springer, 2017, pp. 75–85.
co de España), EphemeCH TIN2014-56494-C4-3-P, DeepBio [20] A. Fernández-Ares, A. Mora, M. Arenas, P. Garcı́a-Sanchez, G. Romero,
V. Rivas, P. Castillo, and J. Merelo, “Studying real traffic and mobility
TIN2017-85727-C4-2-P y TEC2015-68752. Especial agrade- scenarios for a smart city using a new monitoring and tracking system,”
cimiento al cuerpo directivo de la ETSIIT por la concesión Future Generation Computer Systems, vol. 76, pp. 163–179, 2017.
del permiso para la implantación del nodo Mobywit. [21] Hochbaum and Shmoys, “A best possible heuristic for the k-center
problem,” Mathematics of Operations Research, vol. 10, no. 2, pp. 180–
R EFERENCIAS 184, 1985.

[1] W. J. Stanton, “Fundamentals of marketing,” 1967.


[2] G. Pan, G. Qi, W. Zhang, S. Li, Z. Wu, and L. T. Yang, “Trace analysis
and mining for smart cities: issues, methods, and applications,” IEEE
Communications Magazine, vol. 51, no. 6, pp. 120–126, 2013.
[3] R. Schneider, R. Patten, and J. Toole, “Case study analysis of pedestrian
and bicycle data collection in us communities,” Transportation Research
Record: Journal of the Transportation Research Board, no. 1939, pp.
77–90, 2005.
[4] R. Parisi, E. Di Claudio, G. Lucarelli, and G. Orlandi, “Car plate
recognition by neural networks and image processing,” in Circuits and
Systems, 1998. ISCAS’98. Proceedings of the 1998 IEEE International
Symposium on, vol. 3. IEEE, 1998, pp. 195–198.
[5] M. C. Gonzalez, C. A. Hidalgo, and A.-L. Barabasi, “Understanding
individual human mobility patterns,” Nature, vol. 453, no. 7196, pp.
779–782, 2008.
[6] K. Hashimoto, C. Kawaguchi, S. Matsueda, K. Morinaka, and
N. Yoshiike, “People-counting system using multisensing application,”
Sensors and Actuators A: Physical, vol. 66, no. 1-3, pp. 50–55,
1998. [Online]. Available: http://www.sciencedirect.com/science/article/
pii/S0924424797017159

586
XIII Congreso Español en Metaheurı́sticas y Algoritmos Evolutivos y Bioinspirados

Reduction of the Size of Datasets by using


Evolutionary Feature Selection: the Case of Noise
in a Modern City*
* Note: The full contents of this paper have been published in the volume Lecture Notes in Artificial Intelligence 11160 (LNAI 11160)

Javier Luque, Jamal Toutouh, Enrique Alba


Departamento de Lenguajes y Ciencias de la Computación
Universidad de Málaga
Málaga, Spain
javierluque@uma.es,{jamal,eat}@lcc.uma.es

Abstract—Smart city initiatives have emerged to mitigate the


negative effects of a very fast growth of urban areas. Most of the
population in our cities are exposed to high levels of noise that
generate discomfort and different health problems. These issues
may be mitigated by applying different smart cities solutions,
some of them require high accurate noise information to provide
the best quality of serve possible. In this study, we have designed
a machine learning approach based on genetic algorithms to
analyze noise data captured in the university campus. This
method reduces the amount of data required to classify the
noise by addressing a feature selection optimization problem. The
experimental results have shown that our approach improved the
accuracy in 20% (achieving an accuracy of 87% with a reduction
of up to 85% on the original dataset).
Index Terms—Smart city, Genetic algorithm, Feature selection,
Noise

587
XVIII Conferencia de la Asociación Española para la Inteligencia Artificial

Studying Solutions of the p-Median Problem for the


Location of Public Bike Stations*
* Note: The full contents of this paper have been published in the volume Lecture Notes in Artificial Intelligence 11160 (LNAI 11160)

Christian Cintrano Francisco Chicano Thomas Stützle Enrique Alba


E.T.S. Ingenierı́a Informática E.T.S. Ingenierı́a Informática Universite Libre de Bruxelles E.T.S. Ingenierı́a Informática
University of Málaga University of Málaga Brussels, Belgium University of Málaga
Málaga, Spain Málaga, Spain stuetzle@ulb.ac.be Málaga, Spain
cintrano@lcc.uma.es chicano@lcc.uma.es eat@lcc.uma.es

Abstract—The use of bicycles as a means of transport is


becoming more and more popular today, especially in urban
areas, to avoid the disadvantages of individual car traffic. In fact,
city managers react to this trend and actively promote the use
of bicycles by providing a network of bicycles for public use and
stations where they can be stored. Establishing such a network
involves the task of finding best locations for stations, which is,
however, not a trivial task. In this work, we examine models to
determine the best location of bike stations so that citizens will
travel the shortest distance possible to one of them. Based on
real data from the city of Malaga, we formulate our problem as
a p-median problem and solve it with a variable neighborhood
search algorithm that was automatically configured with irace.
We compare the locations proposed by the algorithm with the
real ones used currently by the city council. We also study where
new locations should be placed if the network grows.
Index Terms—Bike station location, p-Median problem, Vari-
able neighborhood search

588
XIII Congreso Español
de Metaheurísticas,
Algoritmos Evolutivos y
Bioinspirados
(XIII MAEB)
MAEB 5: SESIÓN E SPECIAL:
A LGORITMOS
M ULTIO BJETIVO
Organizadores:
E NRIQUE A LBA Y M ARIANO LUQUE
XIII Congreso Español en Metaheurı́sticas y Algoritmos Evolutivos y Bioinspirados

An Improvement Study of the Decomposition-based


Algorithm Global WASF-GA for Evolutionary
Multiobjective Optimization*
* Note: The full contents of this paper have been published in the volume Lecture Notes in Artificial Intelligence 11160 (LNAI 11160)

Sandra Gonzalez-Gallardo, Rubén Saborido, Ana B. Ruiz, Mariano Luque


Department of Applied Economics (Mathematics)
University of Málaga
Málaga, Spain
{sandragg, rsain, abruiz, mluque}@uma.es

Abstract—The convergence and the diversity of the


decomposition-based evolutionary algorithm Global WASF-GA
(GWASF-GA) relies on a set of weight vectors that determine
the search directions for new non-dominated solutions in the
objective space. Although using weight vectors whose search
directions are widely distributed may lead to a well-diversified
approximation of the Pareto front (PF), this may not be enough to
obtain a good approximation for complicated PFs (discontinuous,
non-convex, etc.). Thus, we propose to dynamically adjust the
weight vectors once GWASF-GA has been run for a certain
number of generations. This adjustment is aimed at re-calculating
some of the weight vectors, so that search directions pointing to
overcrowded regions of the PF are redirected toward parts with
a lack of solutions that may be hard to be approximated. We test
different parameters settings of the dynamic adjustment in opti-
mization problems with three, five, and six objectives, concluding
that GWASF-GA performs better when adjusting the weight
vectors dynamically than without applying the adjustment.
Index Terms—Evolutionary multiobjective optimization,
Decomposition-based algorithm, GWASF-GA, Weight vector

591
XVIII Conferencia de la Asociación Española para la Inteligencia Artificial

Pruning Dominated Policies in Multiobjective


Pareto Q-learning*
* Note: The full contents of this paper have been published in the volume Lecture Notes in Artificial Intelligence 11160 (LNAI 11160)

Lawrence Mandow, José-Luis Pérez-de-la-Cruz


Departamento de Lenguajes y Ciencias de la Computación
Universidad de Málaga
Málaga, Spain
{lawrence, perez}@lcc.uma.es

Abstract—The solution for a Multi-Objetive Reinforcement


Learning problem is a set of Pareto optimal policies. MPQ-
learning is a recent algorithm that approximates the whole set of
all Pareto-optimal deterministic policies by directly generalizing
Q-learning to the multiobjective setting. In this paper we present
a modification of MPQ-learning that avoids useless cyclical
policies and thus improves the number of training steps required
for convergence.
Index Terms—

592
XIII Congreso Español en Metaheurı́sticas y Algoritmos Evolutivos y Bioinspirados

Estudio de escalabilidad de implementaciones


multiobjetivo en problemas con muchos objetivos
Aurora Ramı́rez, Rafael Barbudo, José Raúl Romero, Sebastián Ventura
Dpto. Informática y Análisis Numérico, Universidad de Córdoba
{aramirez, rbarbudo, jrromero, sventura}@uco.es

Resumen—Los problemas de optimización de varios objetivos estudios que demuestran el bajo rendimiento de algoritmos
aparecen con frecuencia en aplicaciones reales, lo que ha llevado clásicos a la hora de resolver este tipo de problemas, ası́ como
a la adaptación de la mayorı́a de las metaheurı́sticas existentes. el incremento en el coste computacional [6]. Estos hechos
El creciente interés en los problemas que presentan muchos
objetivos también ha propiciado la aparición de nuevos métodos han propiciado el desarrollo de métodos especializados [7],
especializados. Para conseguir una mayor adopción de estas ası́ como la realización de estudios comparativos [8].
técnicas por parte de usuarios no familiarizados con el uso de A pesar de que algunas librerı́as software están incorporan-
metaheurı́sticas, es necesario que los nuevos desarrollos sean do algunos de los algoritmos para optimización de muchos
incluidos en librerı́as software que faciliten su configuración y objetivos que van adquiriendo mayor relevancia, lo cierto
adaptación. No obstante, la librerı́a escogida puede repercutir
en el rendimiento computacional, pues cada una sigue unos es que aún no existe un gran número de implementaciones
principios de diseño diferentes. Este trabajo analiza algunas de disponibles. Este hecho no solo dificulta su uso con fines
las implementaciones multiobjetivo disponibles en seis librerı́as comparativos, sino que limita su aplicación por parte de
con el propósito de estudiar su comportamiento frente a confi- usuarios con menos experiencia en el campo de las me-
guraciones de creciente complejidad y que incluyen problemas taheurı́sticas. Por otro lado, caracterı́sticas como el lenguaje
de hasta 50 objetivos. La experimentación realizada confirma
que distintas implementaciones de un mismo algoritmo pueden de programación y el diseño estructural de estas librerı́as
presentar diferencias considerables en cuanto al tiempo de podrı́a suponer ciertas diferencias en el uso de los recursos
ejecución y la memoria consumida. computacionales, como el tiempo de ejecución y la memoria,
Index Terms—Optimización de muchos objetivos, me- que también deben considerarse ante la creciente complejidad
taheurı́sticas, librerı́as software tanto de los problemas como de los algoritmos.
I. I NTRODUCCI ÓN En este contexto, este trabajo presenta un estudio preliminar
del rendimiento de algoritmos multiobjetivo implementados en
Los problemas multiobjetivo han sido objeto frecuente de diferentes librerı́as software. Tras realizar un análisis de las
estudio en el campo de las metaheurı́sticas, pues son habitual- implementaciones disponibles, se han elegido seis librerı́as
mente aplicables en escenarios reales [1]. Este tipo de proble- Java: ECJ, EvA, JCLEC-MO, jMetal, MOEA Framework y
mas requiere la definición de un conjunto de variables cuyo Opt4J. El objetivo de la comparación es por tanto analizar el
valor ha de determinarse, un conjunto de restricciones a cum- rendimiento desde una perspectiva puramente computacional,
plir y, al menos, dos objetivos independientes a optimizar [2]. realizando mediciones del tiempo de ejecución y la memoria
La existencia de varios objetivos, a menudo contrapuestos, RAM consumida. Para ello se han seleccionado varios algo-
implica que la solución a un problema multiobjetivo no es ritmos y problemas de entre los disponibles en las librerı́as.
única, sino que debe encontrarse un conjunto de soluciones Además, se ha estudiado la escalabilidad de las distintas im-
donde cada una alcanza un compromiso distinto entre los plementaciones de NSGA-II respecto al número de individuos,
objetivos. El estudio de enfoques bioinspirados para resolver generaciones y objetivos. Los resultados muestran que existen
problemas multiobjetivo ha dado lugar a algoritmos ya clásicos pequeñas diferencias entre las implementaciones cuando se
como NSGA-II y SPEA2, de los que es posible encontrar consideran parámetros estándar, y que éstas se incrementan a
implementaciones en distintos lenguajes de programación [3]. medida que se consideran valores más extremos.
Recientemente, la investigación en este campo se ha cen- El resto del artı́culo se estructura como sigue. La sección II
trado en abordar la resolución de problemas con un número describe los algoritmos y problemas más utilizados en opti-
elevado de objetivos. Según la literatura, los denominados mización multiobjetivo, mientras que la sección III recopila
“problemas de muchos objetivos” (en inglés, many-objective las principales librerı́as software que los implementan. La
optimisation problems) son aquellos que presentan cuatro o sección IV detalla la metodologı́a diseñada para el estudio
más objetivos [4]. Su resolución presenta nuevos retos, tales comparativo, cuyos resultados son analizados en la sección V.
como el crecimiento exponencial del número de soluciones Finalmente, la sección VI presenta las conclusiones.
no dominadas o la ineficacia de operadores genéticos y técni-
cas de preservación de la diversidad [5]. De hecho, existen II. O PTIMIZACI ÓN CON M ÚLTIPLES OBJETIVOS
Trabajo financiado por los ministerios de Economı́a (TIN2017-83445-P) y Esta sección introduce los principales tipos de algoritmos
de Educación (FPU13/01466), y fondos FEDER. multiobjetivo existentes, destacando aquellos especializados en

593
XVIII Conferencia de la Asociación Española para la Inteligencia Artificial

la optimización de muchos objetivos. Después se describen uno [11], y DTLZ, un conjunto de nueve problemas cuyo
algunos de los problemas comúnmente utilizados para evaluar número de objetivos es adaptable [12].
el rendimiento de estos algoritmos.
III. I MPLEMENTACIONES DISPONIBLES EN LIBRER ÍAS
II-A. Familias de algoritmos bioinspirados La popularidad de las técnicas metaheurı́sticas ha llevado
a la creación de librerı́as y frameworks software que dan
Desde la publicación de VEGA, considerado el primer soporte a la investigación y facilitan su aplicación práctica [3].
algoritmo evolutivo multiobjetivo [2], la aparición de nuevos Este tipo de herramientas no solo contemplan la configuración
algoritmos o mejoras sobre los ya propuestos ha sido cons- y ejecución de los algoritmos y sus componentes, sino que
tante [9]. En los inicios del área, los algoritmos iban siendo también permiten adaptarlos a nuevos problemas.
clasificados en generaciones [10]. Ası́, la conocida como La Tabla I muestra un listado de algunas librerı́as que
primera generación se basa fuertemente en el concepto de incluyen soporte para la optimización multiobjetivo, indicando
dominancia y el uso de estrategias de nichos. La incorporación la última versión y su año de lanzamiento, el lenguaje de
de mecanismos de elitismo es la principal caracterı́stica de la programación y los algoritmos que proporcionan1 . Como
segunda generación, a la que pertenecen SPEA2 y NSGA-II. puede observarse, entre ellas hay herramientas de propósito
En el ámbito de la optimización de muchos objetivos, los general muy conocidas, como HeuristicLab y ECJ. A pesar
algoritmos se clasifican atendiendo al enfoque que siguen para de su madurez, el número de implementaciones multiobje-
abordar los retos mencionados anteriormente [7]. En primer tivo que ofrecen se limita a los algoritmos evolutivos más
lugar, los algoritmos basados en descomposición definen un populares. Otras librerı́as Java son Opt4J y EvA, las cuales
conjunto de pesos para establecer diferentes direcciones de disponen de mayor número y variedad de algoritmos. Más
búsqueda. MOEA/D es el algoritmo más conocido dentro de recientemente, han ido apareciendo librerı́as en Python, como
esta familia. Por otro lado, los algoritmos basados en indicado- DEAP (especializada en algoritmos distribuidos) y PyGMO
res utilizan una medida de rendimiento, como el hipervolumen, (especializada en algoritmos paralelos), si bien el número de
para guiar la búsqueda. IBEA fue el primer algoritmo de algoritmos multiobjetivo en ambas es aún reducido.
esta familia, donde también destacan HypE o SMS-EMOA. ParadisEO-MOEO y JCLEC-MO se asemejan en cuanto a
Otro conjunto de algoritmos se caracterizan por la adopción su estructura, pues ambas librerı́as disponen de un módulo
de criterios de dominancia relajados, como la ǫ-dominancia especı́fico para optimización multiobjetivo. Por un lado, Para-
utilizada tanto en algoritmos evolutivos (ǫ-MOEA) como de disEO ha sido posiblemente la librerı́a más popular de entre las
optimización de partı́culas (OMOPSO). El uso de un conjunto desarrolladas en C++, si bien lleva tiempo sin ser actualizada.
de puntos de referencia es una técnica habitual para garantizar Por otro lado, JCLEC-MO ofrece un mayor conjunto de
la diversidad en espacios de objetivos multidimensionales. En algoritmos, incluyendo algunos especialmente indicados para
este grupo se encuentran algoritmos como NSGA-III y RVEA, problemas de muchos objetivos.
entre otros. Finalmente, los métodos basados en preferencias, Finalmente, también es posible encontrar librerı́as especia-
como WASF-GA o PICEA-g, permiten restringir la búsqueda lizadas en optimización multiobjetivo. La primera de ellas fue
a una zona de interés para el usuario. Los detalles de estos PISA, si bien se trata de un proyecto ya abandonado. jMetal y
algoritmos pueden encontrarse en artı́culos de referencia co- MOEA Framework, ambas desarrolladas en Java, destacan por
mo [7], [9]. sus continuas actualizaciones y su amplio catálogo de algorit-
mos. Dos proyectos muy recientes y activos son PlatEMO y
II-B. Problemas para el estudio del rendimiento Platypus, desarrollados en Matlab y Python, respectivamente.
A la hora de comparar el rendimiento de distintos algo- IV. M ETODOLOG ÍA EXPERIMENTAL
ritmos, es frecuente utilizar problemas tipo o benchmarks.
Por ejemplo, problemas tan conocidos como el de la mochila Para el estudio comparativo de implementaciones multiob-
(Knapsack Problem, KP) o el viajante de comercio (Travelling jetivo se han seleccionado las seis librerı́as Java detalladas en
Salesman Problem, TSP) han sido extendidos respecto a sus la Tabla I. La elección de un único lenguaje de programación
formulaciones originales para un único objetivo. Otro bench- facilita la comparación pues evita posibles diferencias debidas
mark a destacar es LOTZ (Leading Ones, Trailing Zeros), al proceso de compilación. Además, estas librerı́as cuentan
un problema simple de codificación binaria con dos objetivos con, al menos, dos algoritmos en común, lo cual reduce la
contrapuestos: maximizar el número de unos al comienzo del posibilidad de alterar el rendimiento debido a la diferencia
genotipo y maximizar el número de ceros al final. de implementación entre desarrollos propios y nativos. Tan
Para codificación real existen varias familias de problemas solo ha sido necesario implementar algunos problemas para
cuyos frentes de Pareto óptimo presentan diferentes propieda- disponer de un conjunto lo suficientemente variado, ası́ como
des (discontinuidad en el frente, proximidad de óptimos loca- operadores genéticos estándar.
les, etc.). Además, algunas permiten establecer el número de Tras analizar las herramientas, se han planteado dos ex-
objetivos que se desea optimizar, por lo que son especialmente perimentos. El primero tiene como objetivo estudiar distintas
útiles para estudiar la escalabilidad. Entre ellas cabe destacar 1 Las posibles variantes de dichos algoritmos no son mostradas por motivos
ZDT, un conjunto de seis problemas con dos objetivos cada de espacio. El lector es remitido a la documentación de cada herramienta.

594
XIII Congreso Español en Metaheurı́sticas y Algoritmos Evolutivos y Bioinspirados

Tabla I
L IBRER ÍAS Y ALGORITMOS DISPONIBLES PARA OPTIMIZACI ÓN MULTIOBJETIVO

Librerı́a Versión Año Lenguaje Principales algoritmos


DEAP 1.2.2 2017 Python CMAES-MO, NSGA-II, SPEA2
ECJ 26 2018 Java NSGA-II, NSGA-III, SPEA2
EvA 2.2 2015 Java CMAES-MO, MOGA, NSGA, NSGA-II, PESA, PESA2, SPEA, SPEA2
HeuristicLab 3.3.15 2018 C# CMAES-MO, NSGA-II
ǫ-MOEA, GrEA, HypE, IBEA, MOCHC, MOEA/D, OMOPSO, NSGA-II,
JCLEC-MO 1.0 2018 Java
NSGA-III, PAES, PAR, RVEA, SMS-EMOA, SMPSO, SPEA2
AbYSS, CellDE, dMOPSO, GDE3, GWASF-GA, IBEA, MOCell, MOCHC,
jMetal 5.4 2017 Java MOEA/D, MOEADD, MOMBI, MOMBI-II, NSGA-II, NSGA-III, OMOPSO,
PAES, PESA2, SMS-EMOA, SMPSO, SPEA2, WASF-GA
CMAES-MO, DBEA, ǫ-MOEA, GDE3, IBEA, MOEA/D, MSOPS, NSGA-II, NSGA-III,
MOEA Framework 2.12 2017 Java
OMOPSO, PAES, PESA2, RVEA, SMPSO, SMS-EMOA, SPEA2, VEGA
Opt4J 3.1.4 2015 Java NSGA-II, OMOPSO, SMS-EMOA, SPEA2
PaGMO/PyGMO 2.8 2018 C++/Python MOEA/D, NSGA-II
ParadisEO-MOEO 2.0.1 2012 C++ MOGA, IBEA, NSGA, NSGA-II, SPEA2
AGE-II, dMOPSO, ǫ-MOEA, GDE3, GrEA, HypE, I-DBEA, IBEA, LMEA,
PlatEMO 1.5 2017 Matlab MOEA/D, MOMBI-II, MOPSO, MSOPS-II, NSGA-II, NSGA-III, PICEA-g,
PSEA-II, RPEA, RVEA, SMPSO, SMS-EMOA, SPEA2, Two Arch2
Platypus 1.0.2 2018 Python ǫ-MOEA, GDE3, IBEA, MOEA/D, NSGA-II, NSGA-III, OMOPSO, SMPSO, SPEA2.
PISA - 2009 C ǫ-MOEA, FEMO, HypE, IBEA, MSOPS, NSGA-II, SEMO2, SHV, SPAM, SPEA2

combinaciones de algoritmos y problemas, donde estos últimos está presente en todas las librerı́as y no presenta parámetros
varı́an en cuanto al tipo de codificación y al número de adicionales. Puesto que se desea variar el número de objetivos,
objetivos. La Tabla II muestra la configuración propuesta, se ha seleccionado DTLZ1 como problema a resolver. Los
donde el número entre paréntesis representa el número de operadores genéticos y sus probabilidades se configuran de
problema dentro de la familia correspondiente. Para las tres acuerdo a los valores mostrados en la Tabla III.
librerı́as que disponen de un número menor de algoritmos se
ha seleccionado un número mayor de problemas. En cuanto Tabla III
C ONFIGURACI ÓN DE PAR ÁMETROS
a las tres últimas librerı́as, se han seleccionado algoritmos
representativos de distintas familias. En el caso de MOEA/D, Parámetro Valor
únicamente se han considerado problemas de optimización Parámetros comunes
Tamaño de la población 100
real debido a que es el tipo de problema asumido en jMetal. Número de generaciones 100
Igualmente, la generación automática de los pesos se limita Probabilidad de cruce 0,9
a problemas biobjetivo. Por ser un algoritmo de partı́culas, Probabilidad de mutación 0,1 (1/longitud genotipo)
Operador de cruce 1-Point (binario), SBX (real)
OMOPSO también queda restringido a problemas de optimi- Operador de mutación Bit flip (binario), Polynomial (real)
zación real. La Tabla III recoge los valores de los parámetros, SPEA2
tanto generales como especı́ficos de cada algoritmo. Tamaño de la población (P ) 50
Tamaño del archivo (A) 50
Selector de padres Torneo
√ binario
Tabla II Parámetro k 2
P +A
A LGORITMOS Y PROBLEMAS SELECCIONADOS MOEA/D
Tamaño de vecindad (τ ) 10
Problema Máx. Núm. Reemplazos (nr) 2
Algoritmo
2 obj. 4 obj. 6 obj. Modo de evaluación Tchebycheff
ECJ, EvA, Opt4J Generación de pesos Uniforme
NSGA-II LOTZ, ZDT (1, 4) KP DTLZ (1, 2, 4) IBEA
SPEA2 LOTZ, ZDT (1, 4) KP DTLZ (1, 2, 4) Selector de padres Torneo binario
JCLEC-MO, jMetal, MOEA Framework Indicator para evaluación Hipervolumen
IBEA LOTZ KP DTLZ (1, 2) Parámetro κ 0,05
MOEA/D ZDT (1, 4) DTLZ (1, 2) Parámetro ρ 2
OMOPSO ZDT (1, 4) DTLZ (1, 2) OMOPSO
NSGA-II LOTZ KP DTLZ (1, 2) Tamaño del archivo 100
Parámetro ǫ 0,0075

El segundo experimento pretende analizar la escalabilidad


de las implementaciones en base a tres factores: el tamaño de En ambos experimentos se ha utilizado Syrupy2 como
la población (100, 500, 1000), el número de generaciones (100, herramienta profiler para medir el tiempo de ejecución y el
500, 1000) y el número de objetivos (2, 5, 10, 25, 50). Estas consumo de memoria a intervalos regulares. Dichos intervalos
configuraciones serán identificadas como Px-Gy-Oz, donde P se han establecido en base a ejecuciones previas con el fin de
representa el tamaño de la población, G, las generaciones y
O, los objetivos. El algoritmo escogido es NSGA-II, ya que 2 https://github.com/jeetsukumaran/Syrupy

595
XVIII Conferencia de la Asociación Española para la Inteligencia Artificial

obtener un mı́nimo de 30 muestras para cada configuración. La Tabla IV


experimentación se ha realizado en una máquina con Debian T IEMPO DE EJECUCI ÓN EN SEGUNDOS PARA EL PRIMER GRUPO DE
LIBRER ÍAS ( EXPERIMENTO 1)
8, ocho núcleos Intel Core i7-2600, CPU a 3,4 GHz y 16 GB
de memoria RAM. En el caso del primer experimento, cada Configuración ECJ EvA Opt4J
NSGA-II – LOTZ(2) 0, 245 ± 0, 014 1, 443 ± 0, 037 0, 773 ± 0, 050
configuración ha sido ejecutada cinco veces en un único núcleo NSGA-II – ZDT1(2) 0, 299 ± 0, 015 1, 827 ± 0, 019 0, 785 ± 0, 056
para evitar posibles interferencias. Además, se ha alternado el NSGA-II – ZDT4(2) 0, 295 ± 0, 017 1, 537 ± 0, 014 0, 765 ± 0, 068
NSGA-II – ZDT6(2) 0, 284 ± 0, 034 1, 466 ± 0, 023 0, 758 ± 0, 058
orden de ejecución de cada librerı́a para mantener condiciones NSGA-II – KP(4) 4, 879 ± 0, 022 1, 587 ± 0, 041 1, 142 ± 0, 076
similares respecto al arranque de la JVM. En el segundo NSGA-II – DTLZ1(6) 0, 344 ± 0, 021 1, 658 ± 0, 043 0, 896 ± 0, 067
NSGA-II – DTLZ2(6) 0, 336 ± 0, 022 1, 803 ± 0, 040 0, 900 ± 0, 043
experimento, cada configuración ha sido lanzada seis veces NSGA-II – DTLZ4(6) 0, 351 ± 0, 034 1, 834 ± 0, 039 0, 922 ± 0, 110
utilizando dos núcleos para que el experimento no tuviese una SPEA2 – LOTZ(2) 0, 444 ± 0, 017 1, 445 ± 0, 022 0, 609 ± 0, 038
SPEA2 – ZDT1(2) 0, 368 ± 0, 028 2, 684 ± 0, 032 0, 999 ± 0, 087
duración excesiva. No obstante, las configuraciones también SPEA2 – ZDT4(2) 0, 291 ± 0, 022 1, 380 ± 0, 029 1, 020 ± 0, 060
se planificaron de forma que no siempre las mismas librerı́as SPEA2 – ZDT6(2) 0, 300 ± 0, 021 1, 385 ± 0, 047 0, 735 ± 0, 032
SPEA2 – KP(4) 3, 219 ± 0, 033 1, 736 ± 0, 105 1, 173 ± 0, 065
estuviesen ejecutando en paralelo a fin de reducir el sesgo SPEA2 – DTLZ1(6) 0, 959 ± 0, 050 1, 646 ± 0, 107 1, 633 ± 0, 236
lo más posible. Tras obtener el tiempo medio de ejecución SPEA2 – DTLZ2(6) 1, 442 ± 0, 023 2, 702 ± 0, 038 1, 583 ± 0, 070
SPEA2 – DTLZ4(6) 1, 435 ± 0, 088 2, 897 ± 0, 059 1, 699 ± 0, 103
de cada configuración, se ha aplicado el test de Friedman Friedman (ranking) 1,250 2,875 1,875
para analizar si existen diferencias significativas entre aquellas Holm (α/i) - 0,025 0,050
librerı́as para las que se ejecutaron los mismos algoritmos y
problemas. Es decir, para el primer experimento se analizan
Tabla V
dos grupos por separado, uno formado por ECJ, EvA y Opt4J, T IEMPO DE EJECUCI ÓN EN SEGUNDOS PARA EL SEGUNDO GRUPO DE
y otro formado por JCLEC-MO, jMetal y MOEA Framework. LIBRER ÍAS ( EXPERIMENTO 1)
En caso de encontrar diferencias significativas, se aplica el
Configuración JCLEC-MO jMetal MOEA Fram.
post-procedimiento de Holm. Además, se ha ejecutado el test NSGA-II – LOTZ(2) 0, 410 ± 0, 009 0, 624 ± 0, 023 0, 328 ± 0, 018
Cliff’s Delta para analizar el tamaño del efecto, esto es, la NSGA-II – KP(4) 0, 519 ± 0, 027 0, 558 ± 0, 042 0, 374 ± 0, 016
NSGA-II – DTLZ1(6) 0, 537 ± 0, 028 0, 540 ± 0, 066 0, 444 ± 0, 011
magnitud de la diferencia observada. NSGA-II – DTLZ2(6) 0, 587 ± 0, 064 0, 595 ± 0, 055 0, 389 ± 0, 008
IBEA – LOTZ(2) 4,754 ± 0, 037 1, 288 ± 0, 039 0, 844 ± 0, 019
V. R ESULTADOS Y DISCUSI ÓN IBEA – KP(4) 3, 012 ± 0, 036 1, 678 ± 0, 142 1, 036 ± 0, 029
IBEA – DTLZ1(6) 1, 829 ± 0, 030 2, 556 ± 0, 034 1, 254 ± 0, 011
En esta sección se presentan los resultados obtenidos para IBEA – DTLZ2(6) 1, 843 ± 0, 018 2, 538 ± 0, 032 1, 285 ± 0, 007
MOEA/D – ZDT1(2) 0, 429 ± 0, 018 0, 337 ± 0, 020 0, 458 ± 0, 008
cada uno de los experimentos planteados. Por motivos de MOEA/D – ZDT4(2) 0, 413 ± 0, 030 0, 277 ± 0, 010 0, 414 ± 0, 010
espacio, solo los resultados más relevantes son discutidos. MOEA/D – DTLZ1(2) 0, 380 ± 0, 022 0, 260 ± 0, 013 0, 434 ± 0, 023
MOEA/D – DTLZ2(2) 0, 492 ± 0, 035 0, 236 ± 0, 004 0, 412 ± 0, 016
OMOPSO – ZDT1(2) 0, 556 ± 0, 034 0, 412 ± 0, 050 1, 269 ± 0, 040
V-A. Comparación de algoritmos y problemas OMOPSO – ZDT4(2) 0, 530 ± 0, 043 0, 284 ± 0, 010 1, 117 ± 0, 032
OMOPSO – DTLZ1(2) 0, 663 ± 0, 009 0, 484 ± 0, 042 1, 510 ± 0, 016
Las Tablas IV y V muestran los tiempos medios de OMOPSO – DTLZ2(2) 0, 715 ± 0, 035 1, 466 ± 0, 086 2, 139 ± 0, 072
ejecución y la desviación estándar para los dos grupos de Friedman (ranking) 2,125 1,938 1,938

librerı́as. La ejecución más rápida (0,24 s) se corresponde


con la resolución de DTLZ2 con MOEA/D en jMetal. Por
el contrario, el problema de la mochila con NSGA-II en ECJ requiriendo varios segundos de ejecución. La diferencia con
es la combinación que más tiempo ha necesitado (4,88 s). respecto al resto de algoritmos es más evidente en JCLEC-
En el primer grupo de librerı́as (Tabla IV), ECJ es la que MO y jMetal, especialmente cuando se resuelven problemas
requiere menos tiempo, empleando más de un segundo en solo combinatorios. Para este conjunto de librerı́as, el test de
cuatro configuraciones. EvA es la librerı́a que reporta tiempos Friedman no encuentra diferencias significativas. De hecho, el
de ejecución más altos, siempre por encima de un segundo, test Cliff’s Delta siempre cataloga las diferencias entre cada
mientras que Opt4J mantiene tiempos más estables, entre 0,5 pareja de librerı́as como insignificante (negligible), salvo entre
y 1,5 s. Para confirmar si estas diferencias son significativas, jMetal y JCLEC-MO, que es pequeña (small).
se ha aplicado el test de Friedman, donde la hipótesis nula Dado que todas estas configuraciones son simples y se eje-
establece que todas las librerı́as tienen un rendimiento similar. cutan en pocos segundos, tan solo se pueden realizar algunas
El valor del estadı́stico de Iman and Daveport, z, es 30,71, apreciaciones respecto a la memoria RAM consumida. Las
mientras que el valor crı́tico de acuerdo a una distribución F seis librerı́as Java analizadas consumen un mı́nimo de 12.000
con 2 y 30 grados de libertad es igual a 5,39 (α = 0, 01). KB en cada ejecución. EvA y Opt4J son las dos librerı́as que
Dado que z es mayor que el valor crı́tico, la hipótesis nula muestran un comportamiento más estable, con un máximo
puede ser rechazada. El test de Holm devuelve un p − value de 56.459 KB y 126.084 KB de media, respectivamente.
igual a 0,05, lo que confirma que ECJ es significativamente Entre el resto, el uso máximo de memoria es más disperso
superior a EvA, pero equivalente a Opt4J. En cuanto al efecto llegando a presentar “picos” de más de 100.000 KB en JCLEC-
del tamaño, el test Cliff’s Delta indica que la diferencia en MO (76.130 KB de media), jMetal (88.326 KB) y MOEA
tiempo entre las tres librerı́as es siempre amplia (large). Framerwork (89.005 KB), y más de 500.000 KB en ECJ
En el segundo grupo de librerı́as (JCLEC-MO, jMetal (149.265 KB) cuando se resuelve el problema de la mochila.
y MOEA Framework), IBEA es el algoritmo más costoso, Valorando los resultados del primer experimento en global,

596
XIII Congreso Español en Metaheurı́sticas y Algoritmos Evolutivos y Bioinspirados

todas las librerı́as presentan unos requisitos de tiempo y distintas combinaciones de objetivos y generaciones, fijando
memoria asumibles ante un escenario de uso normal. Aún el tamaño de población en 1000 (el valor más alto probado).
ası́, y a pesar de que las configuraciones probadas son po- Para facilitar la comparación entre librerı́as, se ha mantenido
co exigentes, se perciben ciertas diferencias. En concreto, la misma escala respecto al tiempo. A excepción de EvA, las
no todas las librerı́as responden igual ante la ejecución de librerı́as presentan una tendencia similar y no suelen requerir
un mismo algoritmo en problemas de distinta naturaleza más de 30 minutos por ejecución.
(combinatorios frente a optimización real). En este sentido, Con respecto al consumo de memoria, el alto número de
los problemas combinatorios son más costosos, aún cuando combinaciones probadas permite obtener mayores diferencias.
el número de objetivos es inferior al considerado para los A modo de resumen, la Tabla VII recoge el valor mı́nimo
problemas DTLZ. Esto puede deberse a que la evaluación y máximo de memoria registrado para cada librerı́a. Como
requiere la interpretación del genotipo, frente al uso directo puede verse, no existen grandes diferencias en cuanto a los
de las variables reales. Por otro lado, la formulación concreta valores mı́nimos, pero sı́ en los máximos alcanzados. También
de los diferentes problemas ZDT no parece tener una gran se muestra el porcentaje de veces que cada librerı́a obtiene el
influencia en el tiempo, mientras que sı́ se observan algunas mı́nimo y máximo global para las 60 combinaciones probadas.
diferencias respecto a los problemas DTLZ (véase por ejemplo En este caso, ECJ y Opt4J son las librerı́as que menor y mayor
OMOPSO en jMetal y MOEA Framework, o SPEA2 en ECJ memoria consumen, respectivamente.
y EvA). Respecto a los algoritmos, NSGA-II suele ser el más Este test de escalabilidad confirma que las implementacio-
rápido en la mayorı́a de librerı́as. La única excepción parece nes Java actuales pueden sufrir una degradación considerable
ser la implementación de MOEA/D en JCLEC-MO y jMetal, en su rendimiento si se las somete a configuraciones extremas.
si bien hay que considerar que este algoritmo solo ha sido Aunque quizás no sean los valores más habituales en la
probado con problemas biobjetivo de codificación real. práctica, también debe considerarse que NSGA-II no es de
los algoritmos más costosos y que el problema es sintético.
V-B. Test de escalabilidad En una aplicación real, donde fuese necesario ejecutar algo-
El segundo experimento, donde se ejecutan configuraciones ritmos especı́ficos para problemas de muchos objetivos cuya
con hasta 50 objetivos, permite detectar mayores diferencias evaluación fuese costosa, la elección de una implementación
entre las librerı́as. La Tabla VI muestra los tiempos mı́nimos u otra podrı́a ser determinante. Entre las librerı́as analizadas,
y máximos medios, con su desviación estándar, para cada EvA y Opt4J presentan mayores problemas para controlar el
tamaño de población. También se incluye el ranking obtenido tiempo y la memoria, respectivamente. Por el contrario, ECJ
con el test de Friedman. Cabe señalar que los tiempos mı́nimos y MOEA Framework presentan el mejor rendimiento consi-
y máximos corresponden, por lo general, con las configuracio- derando ambos factores a la vez, ya que tanto jMetal como
nes P100-G100-O2 y P1000-G5000-050. Las excepciones son JCLEC-MO experimentan mayores oscilaciones de memoria.
algunos tiempos mı́nimos en Opt4J, JCLEC-MO y jMetal, que
se consiguen para cinco objetivos. No obstante, los valores son VI. C ONCLUSIONES
muy similares a los obtenidos para dos objetivos, por lo que Este trabajo ha presentado una comparativa experimental
pueden deberse a pequeñas fluctuaciones en la carga de la de implementaciones de algoritmos multiobjetivo disponibles
máquina. En base a estos resultados, ECJ es la librerı́a que en seis librerı́as Java con el fin de analizar sus requisitos de
mejor responde ante configuraciones más exigentes, seguida tiempo y memoria. Los distintos algoritmos han sido ejecu-
de MOEA Framework, si bien el test de Holm no indica la tados considerando configuraciones que difieren en el tipo de
existencia de diferencias significativas entre ambas. Les siguen problema, el número de objetivos, el número de generaciones
jMetal y JCLEC-MO, si bien cabe señalar que JCLEC-MO y el tamaño de la población. Los dos experimentos realizados
responde algo mejor que jMetal ante el aumento del número indican que estos parámetros afectan en mayor o menor me-
de objetivos. Lo mismo ocurre si se comparan las dos librerı́as dida a todas las librerı́as. Para un uso estándar, las diferencias
más lentas según este estudio, pues aunque Opt4j y EvA son poco apreciables y están condicionadas a la complejidad
reportan tiempos mı́nimos similares, Opt4J escala mejor. del algoritmo o del problema a resolver. Sin embargo, si se
Por otro lado, los datos extraı́dos muestran que el incre- necesitan valores elevados para los parámetros anteriores, es
mento en el tiempo de ejecución no depende únicamente del conveniente analizar la forma en que cada librerı́a implementa
número de generaciones. Por ejemplo, configuraciones con el algoritmo, pues las diferencias pueden ser notables. En este
1000 generaciones y dos objetivos pueden requerir menos sentido, este estudio puede extenderse para abarcar un mayor
tiempo de cómputo que configuraciones con 500 generaciones número de librerı́as, algoritmos y problemas. Asimismo, serı́a
y 50 objetivos. Aunque hay algunas excepciones, sı́ se aprecia interesante analizar la capacidad de las distintas librerı́as para
un incremento lineal cuando dos de los parámetros son fijados paralelizar la evaluación de soluciones.
y el otro aumenta progresivamente. Los dos parámetros más
R EFERENCIAS
determinantes son el número de generaciones y el número
de objetivos, especialmente cuando se consideran valores [1] T. Stewart, O. Bandte, H. Braun, N. Chakraborti, M. Ehrgott, M. Göbelt,
Y. Jin, H. Nakayama, S. Poles, and D. Di Stefano, “Real-World Appli-
superiores a 500 y 10, respectivamente. A modo de ejemplo, cations of Multiobjective Optimization,” in Multiobjective Optimization,
la Figura 1 muestra el tiempo medio de ejecución para las vol. 5252 of LNCS, pp. 285–327, springer Berlin Heidelberg, 2008.

597
XVIII Conferencia de la Asociación Española para la Inteligencia Artificial

Tabla VI
T IEMPOS M ÍNIMOS Y M ÁXIMOS EN SEGUNDOS ( EXPERIMENTO 2)

P = 100 P = 500 P = 1000


Librerı́a Ranking
Min. Máx. Min. Máx. Min. Máx.
ECJ 0, 34 ± 0, 04 14, 37 ± 0, 92 0, 79 ± 0, 05 170, 61 ± 2, 44 2, 73 ± 0, 09 589, 33 ± 3, 58 1,00
EvA 1, 79 ± 0, 02 226, 77 ± 2, 25 5, 74 ± 0, 62 3830, 01 ± 94, 69 16, 38 ± 0, 49 16030, 96 ± 512, 88 6,00
JCLEC-MO 0, 64 ± 0, 07 30, 55 ± 0, 58 3, 25 ± 0, 10 475, 77 ± 4, 83 11, 86 ± 0, 07 1611, 35 ± 91, 90 4,11
jMetal 0, 58 ± 0, 06 30, 74 ± 1, 21 2, 64 ± 0, 07 576, 81 ± 3, 86 9, 01 ± 0, 17 2237, 61 ± 30, 34 3,35
MOEA Framework 0, 37 ± 0, 01 19, 26 ± 0, 21 1, 43 ± 0, 08 339, 96 ± 1, 59 4, 27 ± 0, 14 1284, 00 ± 7, 17 2,02
Opt4J 0, 93 ± 0, 08 39, 18 ± 0, 68 4, 12 ± 0, 09 533, 96 ± 6, 95 13, 98 ± 0, 31 1743, 74 ± 12, 82 4,52

(a) ECJ (b) EvA (c) JCLEC-MO

(d) jMetal (e) MOEA Framework (f) Opt4J

Figura 1. Variación en el tiempo de ejecución de NSGA-II para una población de 1000 individuos (experimento 2)

Tabla VII [5] A. López Jaimes and C. A. Coello Coello, Springer Handbook of
R ESUMEN DEL CONSUMO DE MEMORIA ( EXPERIMENTO 2) Computational Intelligence, ch. Many-Objective Problems: Challenges
and Methods, pp. 1033–1046. Springer Berlin Heidelberg, 2015.
Valores (KB) Porcentajes [6] V. Khare, X. Yao, and K. Deb, “Performance Scaling of Multi-objective
Librerı́a Evolutionary Algorithms,” in Proc. 2nd Int. Conf. Evolutionary Multi-
Min. Máx. Min. Máx.
ECJ 123960 2064160 26,67 0,00 Criterion Optimization, pp. 376–390, 2003.
EvA 111080 1676000 15,00 0,00 [7] B. Li, J. Li, K. Tang, and X. Yao, “Many-Objective Evolutionary
JCLEC-MO 123840 6450680 13,33 0,00 Algorithms: A Survey,” ACM Comput. Surv., vol. 48, no. 1, pp. 13:1–35,
jMetal 124080 14485480 23,33 23,33 2015.
MOEA Framework 123760 2589000 15,00 0,00 [8] J. Maltese, B. M. Ombuki-Berman, and A. P. Engelbrecht, “A Scalability
Opt4J 124480 3909920 6,67 76,67 Study of Many-Objective Optimization Algorithms,” IEEE T Evolut.
Comput., vol. 22, no. 1, pp. 79–96, 2018.
[9] A. Zhou, B.-Y. Qu, H. Li, S.-Z. Zhao, P. N. Suganthan, and Q. Zhang,
“Multiobjective evolutionary algorithms: A survey of the state of the
art,” Swarm Evolut. Comput., vol. 1, no. 1, pp. 32–49, 2011.
[2] C. A. Coello Coello, G. B. Lamont, and D. A. Van Veldhuizen, Evo- [10] C. A. Coello Coello, “Evolutionary Multiobjective Optimization: Current
lutionary Algorithms for Solving Multi-Objective Problems. Springer, and Future Challenges,” in Advances in Soft Computing, pp. 243–256,
2nd ed., 2007. Springer London, 2003.
[3] J. A. Parejo, A. Ruiz-Cortés, S. Lozano, and P. Fernández, “Metaheuris- [11] E. Zitzler, K. Deb, and L. Thiele, “Comparison of Multiobjective
tic optimization frameworks: a survey and benchmarking,” Soft Comput., Evolutionary Algorithms: Empirical Results,” Evolut. Comput., vol. 8,
vol. 16, no. 3, pp. 527–561, 2012. no. 2, pp. 173–195, 2000.
[4] S. Chand and M. Wagner, “Evolutionary many-objective optimization: A [12] K. Deb, L. Thiele, M. Laumanns, and E. Zitzler, Scalable Test Pro-
quick-start guide,” Surv. Oper. Res. Manag. Sci., vol. 20, no. 2, pp. 35– blems for Evolutionary Multiobjective Optimization, ch. Evolutionary
42, 2015. Multiobjective Optimization, pp. 105–145. Springer London, 2005.

598
XIII Congreso Español en Metaheurı́sticas y Algoritmos Evolutivos y Bioinspirados

Algoritmo Evolutivo con División del Espacio de


los Objetivos en base a la Solución Nadir: Un
Estudio Comparativo sobre el Problema de la
Mochila 0/1 Bi-Objetivo
1st Máximo Méndez 2nd Daniel Alejandro Rossit
Instituto Universitario de Sistemas Inteligentes (SIANI) Departamento de Ingenierı́a
Universidad de Las Palmas de Gran Canaria (ULPGC) CONICET, Universidad Nacional del Sur (UNS)
España Argentina
maximo.mendez@ulpgc.es daniel.rossit@uns.edu.ar

3rd Mariano Frutos 4th Begoña González


Departamento de Ingenierı́a Instituto Universitario de Sistemas Inteligentes (SIANI)
CONICET, Universidad Nacional del Sur (UNS) Universidad de Las Palmas de Gran Canaria (ULPGC)
Argentina España
mfrutos@uns.edu.ar bego.landin@ulpgc.es

Resumen—Este trabajo presenta un algoritmo evolutivo mul- que les proporciona gran destreza para encontrar múltiples
tiobjetivo (AEMO) el cual divide el espacio de los objetivos, en soluciones no-dominadas en espacios de soluciones de diversa
varias regiones utilizando la solución Nadir calculada en cada naturaleza. NSGA-II [2] y MOEA/D [12] son dos AEMOs
generación del algoritmo. Para la clasificación de las soluciones
de las distintas regiones en frentes no-dominados, se utilizan muy reconocidos en la comunidad cientı́fica multiobjetivo. El
diferentes estrategias de optimización de las funciones objetivo. primero, utiliza una clasificación de rangos por dominancia
La idea es intensificar la diversidad del frente de soluciones no- como mecanismo de convergencia, mientras que crowding-
dominadas alcanzado. El algoritmo propuesto (NSGA-II/OSD) distance es el mecanismo usado para diversificar las solu-
se implementa sobre el algoritmo NSGA-II y se ensaya sobre ciones. El segundo, funciona descomponiendo el POM en
el Problema de la Mochila 0/1 Bi-Objetivo (MOKP-0/1) bien
conocido en la comunidad multiobjetivo. Con dos objetivos, este un número de subproblemas escalares o mono-objetivos que
problema es de difı́cil resolución para un AEMO dado el elevado son resueltos todos a la misma vez mediante la evolución
número de soluciones superpuestas (overlapping solutions) que de una población de soluciones. Algunos trabajos recientes
se generan durante su evolución. El método propuesto ofrece describen dificultades en cuanto a la especificación del punto
muy buen desempeño cuando es comparado con los algoritmos de referencia en MOEA/D [6], [7], [9], [11]. Trabajos con
NSGA-II y MOEA/D muy reconocidos ambos en la literatura
especializada. AEMOs que incluyan un sub-división del espacio de los
Index Terms—Optimización, Algoritmos Evolutivos Multiob- objetivos como la propuesta en este trabajo son muy escasos,
jetivo, Dominancia de Pareto, MOKP0/1, NSGA-II, MOEA/D. sólo hemos encontrado [8], [10].
El problema de la mochila multiobjetivo en variables bina-
rias (MOKP/0-1) es un problema combinatorio bien conocido
I. I NTRODUCCI ÓN y ampliamente manejado en la comunidad multi-objetivo. Un
Un problema de optimización multiobjetivo (POM) es aquel considerable número de métodos exactos y metaheurı́sticos,
que corresponde a una cierta realidad industrial, económica o ver por ejemplo [3], [5], [12], intentan resolver este problema.
de otra ı́ndole y sobre el que un decisor desea optimizar varios En [4], se señala que se genera un elevado número de
objetivos usualmente en conflicto entre sı́. Cuando se resuelve soluciones superpuestas (overlapping solutions) cuando los
un POM de complejidad difı́cil, métodos metaheurı́sticos AEMOs se aplican a problemas combinatorios con muchas
son muy apropiados. Estos métodos no grantizan obtener el variables de decisión y baja dimensionalidad. La aparición de
frente exacto de soluciones no-dominadas, pero sı́ un conjunto soluciones superpuestas cuando el Problema de la Mochila 0/1
aproximado. Bi-Objetivo se resuelve con un AEMO, tiene un significativo
La segunda generación de algoritmos evolutivos multiob- impacto negativo sobre la diversidad del frente final de solu-
jetvo (AEMOs), ha demostrado obtener excelentes resultados ciones no-dominadas alcanzado.
resolviendo POM [1]. De naturaleza estocástica, los AEMOs Se propone un hı́brido de NSGA-II, que subdivide el espacio
están basados en el concepto de población de soluciones lo de los objetivos en varias regiones utilizando la solución Nadir

599
XVIII Conferencia de la Asociación Española para la Inteligencia Artificial

calculada en cada generación del algoritmo. Las distintas donde z ∗ = (z1∗ , ..., zn∗ ) es el punto de referencia (PR)
subdivisiones utilizan diferentes estrategias de optimización especificado en este trabajo de la siguiente forma:
de las funciones objetivo. La idea que subyace es intensificar
la diversidad de soluciones del frente alcanzado, permitiendo zi∗ = α ∗ min{fi (x)|x ∈ X} paracada i = 1, ..., n (3)
que soluciones dominadas por los extremos del frente no- y donde α ≥ 1.
dominado alcanzado en cada generación del algoritmo puedan
entrar en la población N no-dominada del algoritmo. II-B. MOEA/D con especificación de Ishibuchi del punto de
El resto del trabajo se organiza de la siguiente manera. referencia
En la sección II se presentan algunos conceptos básicos para
Ishibuchi et al. proponen en [6] usar en (2) la siguiente
entender mejor este trabajo. En la sección III se describe el
especificación para el PR:
método propuesto. Los resultados experimentales se detallan
en la sección IV. Por último, en la sección V se presentan las z R = zi∗ − αt (zimax − zi∗ ) (4)
conclusiones.
donde zi∗ = (z1∗ , ..., zn∗ ) corresponde al mı́nimo valor en la
II. C ONCEPTOS B ÁSICOS función objetivo i, zimax = (z1max , ..., znmax ) corresponde al
En términos de minimización, un POM puede ser definido máximo valor de la función objetivo i en la generación en
de la siguiente forma: curso y αt es un parámetro que decrece en cada generación
del algoritmo. De (4) es obvio que cuando αt = 0 los valores
M in. F (x) = f1 (x), f2 (x), ..., fn (x) z R y z ∗ tienen los mismos valores.
s.a. Para hacer que el valor z R se aproxime gradualmente al
(1)
gk (x) ≤ 0 k ∈ (1, 2, ..., p) valor del punto de referencia z ∗ durante la ejecución del
hl (x) = 0 l ∈ (1, 2, ..., q) algoritmo, el valor αt es modificado en cada generación según:
donde F (x) es el vector de objetivos a minimizar y n ≥ 2 el αt = α (tmax − t)/(tmax − 1) (5)
número de objetivos. Las ecuaciones gk (x) ≤ 0 y hl (x) = 0
representan respectivamente p restricciones de desigualdad y donde α es un valor inicial de αt , tmax es el número máximo
q restricciones de igualdad. Los valores de x que satisfacen de generaciones del algoritmo y t es la generación actual.
el conjunto de las (p + q) restricciones, definen el espacio Nótese que el valor final de αt en la última generación es
realizable S. El vector x = (x1 , x2 , ..., xm ) ∈ S es un vector cero, i.e., z R tiende a z ∗ durante la ejecución del algoritmo.
solución de m variables de decisión.
El conjunto de las imágenes de cada solución realizable en III. M ÉTODO PROPUESTO
el espacio de la decisión, conforma el conjunto de soluciones El algoritmo propuesto en este trabajo consiste en una
realizables en el espacio de los objetivos Z = f (S) definido versión modificada de NSGA-II, en los siguientes términos:
como Z = {z1 = f1 (x), ..., zn = fn (x), ∀x ∈ S} y donde 1. En cada generación t del algoritmo: una población Rt =
z = (z1 , ..., zn ) ∈ Rn representa una solución realizable en el Pt + Qt es construida con Pt la población de padres
espacio de los objetivos. de tamaño N y Qt la población de hijos (tamaño N)
Una solución z t = (z1t , z2t , ..., znt ) ∈ Z domina una solución generados de las operaciones de cruzamiento y mutación
z = (z1u , z2u , ..., znu ) ∈ Z y se le conoce como Pareto-óptima
u
a partir de la población N construida en la generación
si se verifican las siguientes condiciones: t-1.
1. zjt ≤ zju ∀j ∈ (1, 2, ..., n) 2. A partir de la población Rt la solución Nadir es identi-
2. ∃j ∈ (1, 2, ..., n) tal que zjt < zju ficada mediante algún método.
Al conjunto de soluciones Pareto-óptimas en el espacio de 3. En base a la solución Nadir el espacio de los objetivos
soluciones se le llama conjunto óptimo de Pareto y a su imagen se divide en tres regiones independientes R1 , R2 y R3
en el espacio de objetivos frente óptimo de Pareto. tal como se indica en la Fig. 1 izquierda.
4. Las soluciones de cada región R1 , R2 y R3 son clasifica-
II-A. MOEA/D con especificación de Zhang del punto de das (complejidad computacional O(n2N)) en diferentes
referencia frentes no-dominados (F1 , F2 ,...,Fn ). Para la clasifica-
Básicamente, MOEA/D trabaja descomponiendo un POM ción de las soluciones, se usan diferentes criterios de
en un número finito de sub-problemas escalares y resolviéndo- optimización de las funciones objetivo f1 y f2 .
los simultáneamente mediante la evolución de una población a) Región R1: Las dos funciones objetivo f1 y f2 son
de soluciones. Algunos enfoques para convertir un POM en un siempre maximizadas (ver Fig. 1 derecha).
sub-problema escalar se pueden consultar en [12]. El enfoque b) Región R2: La función f1 es siempre maximizada.
de Tchebycheff se expresa como sigue: La función f2 es maximizada si se cumple la
condición t≥nt, en caso contrario f2 es minimizada
M in. g te (x|λ, z ∗ ) = máx {λi fi (x) − zi∗ } (ver Fig. 1 derecha). El valor t es la generación
1≤i≤n (2)
s.a. x∈X actual y nt un parámetro (número de generaciones

600
XIII Congreso Español en Metaheurı́sticas y Algoritmos Evolutivos y Bioinspirados

que se maximiza o minimiza la función objetivo) datos del problema y frente óptimo pueden descargarse de:
que se define como: http://www.tik.ee.ethz.ch/ sop/download/supplementary/
testProblemSuite/.
nt = α tmax 0 ≤ α ≤ 1 (6)
En todos los experimentos se utilizó codificación binaria,
c) Región R3: La función f2 es siempre maximizada. cruce uniforme de probabilidad 0.8 y probabilidad de mutación
La función f1 es maximizada si se cumple la (bit a bit) de 1/500. Un número de 400000 evaluaciones de
condición t≥nt, en caso contrario f1 es minimizada la función objetivo se usó como condición de parada. Tres
(ver Fig. 1 derecha). tamaños de la población N=50, N=100 y N=200 soluciones
Finalizado el paso 4, toda la población Rt queda clasi- fueron utilizadas en los tres algoritmos NSGA-II/OSD, NSGA-
ficada en frentes de no-dominación (F1 , F2 ,...,Fn ). II y MOEA/D. Los valores examinados para el parámetro α
5. Para completar la población Pt+1 hasta alcanzar un definido en (6) de balance convergencia/diversidad de NSGA-
tamaño N, como en NSGA-II, las soluciones con menor II/OSD fueron α= 0.0, 0.1, 0.2, 0.3 0.4, 0.5, 0.6, 0.7, 0.8, 0.9
rango primero, y mayor crowding-distance segundo, son y 1.0. Con MOEA/D, los valores ensayados de α en el cálculo
escogidas. del punto de referencia z ∗ según la especificación de Zhang
definida en (3) fueron α= 1.0, 1.05, 1.1, 1.15, 1.2, 1.25, 1.3; en
la versión de Ishibuchi para el cálculo del punto de referencia
z R definido en (4) y (5), los valores se fijaron en α= 0.0, 0.05,
0.1, 0.5, 1.0, 1.1, 2.0, 3.0, 4.0, 5.0 y 10.0.
Para la comparación de los resultados obtenidos por los
algoritmos, se emplearon la S-metric o hipervolumen H (punto
de referencia usado el 0,0) sugerida en [13] y visualizaciones
de los frentes de soluciones de Pareto alcanzados de valor H
más próximo al valor medio final calculado en 30 ejecuciones
independientes.
Figura 1. División propuesta del espacio de los objetivos en base a la solución IV-C. Análisis previo: NSGA-II/OSD y efectos de variar el
Nadir (izquierda). Criterios de optimización de las funciones objetivo para parámetro α
cada región R1 , R2 y R3 (derecha).
En esta subsección se analizan las influencias en la conver-
gencia y diversidad del frente de soluciones alcanzado, cuando
IV. E XPERIMENTOS Y COMPARACIONES se varı́a el parámetro α en la ecuación (6) en el algoritmo
IV-A. Problema de la Mochila Multiobjetivo MOKP/0-1 propuesto NSGA-II/OSD. En la Fig. 2 (izquierda), se muestran
El problema de la mochila multiobjetivo en variables bi- los valores del hipervolumen medio al modificar los valores
narias (MOKP/0-1) consiste en una serie de objetos o ı́tems del parámetro α. Se puede observar que los mejores valores de
con un peso, un beneficio asociado a cada uno de ellos y un H se obtienen para valores intermedios del parámetro α. Para
lı́mite de capacidad para cada mochila. Ası́, la tarea radica mejor interpretar estos resultados, la Fig. 2 (centro) muestra
en encontrar el subconjunto de objetos que maximicen los los efectos sobre la distribución de soluciones de los frentes
beneficios totales de cada mochila y que puedan ser colocados de Pareto obtenidos cuando N=200. Los frentes de Pareto de
en dichas mochilas sin exceder sus lı́mites de capacidad. El menor diversidad (mayor convergencia) y mayor diversidad
problema es de complejidad NP-difı́cil y puede ser usado para (menor convergencia) se obtienen cuando α=0.0 y α=1.0
modelar cualquier aplicación real que se ajuste al modelo respectivamente. El frente con el mejor valor del hipervolumen
descrito en (7). se alcanza cuando α=0.5, ver la Fig. 2 (derecha).
El MOKP/0-1 puede ser definido formalmente como sigue:
IV-D. Resultados comparativos: NSGA-II/OSD vs NSGA-II
 m
∑ En esta subsección se compara el algoritmo NSG-II/OSD
 max. fi (x) = bij xj i = 1, ..., n propuesto en este trabajo con el algoritmo NSGA-II de Deb


j=1
m
∑ (7) et al. [2]. La Fig. 3 muestra los frentes de soluciones de Pareto
 s.a. wij xj ≤ ci xj ϵ{0, 1} obtenidos por ambos algoritmos. Se observa que el frente


j=1 de soluciones alcanzado con el método propuesto (α=0.5)
donde: m=número de objetos, xj =variable de decisión, tiene bastante más diversidad que el alcanzado por NSGA-
n=número de sacos, bij =beneficio objeto j según saco i, II, aunque en términos de convergencia parece que NSGA-
wij =peso objeto j según saco i y ci = capacidad saco i. II obtiene mejor valor. La Fig. 4 (izquierda) muestra que en
términos de la métrica H, el frente de soluciones logrado
IV-B. Configuración de parámetros y métricas por NSGA-II/OSD es mejor que el obtenido por NSGA-II;
En este trabajo, las implementaciones de NSGA-II y también la Fig. 4 (derecha) señala para NSGA-II/OSD un
MOEA/D se han realizado según [2] y [12]. Ambos algoritmos menor valor de la desviación estándard del hipervolumen. En
son aplicados sobre el 500-MOKP/0-1 con dos objetivos, los la Fig. 5 (izquierda) se aprecia que durante la evolución de

601
XVIII Conferencia de la Asociación Española para la Inteligencia Artificial

Figura 2. Valores H al variar el parámetro α en el algoritmo propuesto NSGA-II/OSD (izquierda). Gráficas de soluciones no-dominadas con el valor H más
próximo al valor medio final en 30 ejecuciones (centro). Evolución del hipervolumen medio de los frentes mostrados en la gráfica central (derecha).

los algoritmos, el porcentaje de soluciones diferentes en la


población N de soluciones es siempre mejor para el algoritmo
propuesto, lo que justifica la mayor diversidad del frente de NSGA−II/OSD vs NSGA−II NSGA−II/OSD vs NSGA−II
4.2 0.07

soluciones logrado por NSGA-II/OSD. También, el número de NSGA−II/OSD α=0.5 N200


4 0.06 NSGA−II N200
reparaciones por ensayo realizadas a los cromosomas de las
soluciones de la población para que sean factibles, es menor
Hipervolumen medio
3.8 0.05

Desviación media
con el método propuesto tal como se aprecia en la Fig. 5 3.6 0.04
(derecha).
3.4 0.03

4
x 10 NSGA−II/OSD vs NSGA−II 3.2 0.02
2.1

2.05
3 0.01
NSGA−II/OSD α=0.5 N200
2
NSGA−II N200
1.95 2.8 0
0 500 1000 1500 2000 0 500 1000 1500 2000
1.9 Generación Generación
1.85
f2

1.8 Figura 4. NSGA-II/OSD versus NSGA-II: Evolución de los valores de los


1.75 hipervolumenes medio (iquierda) y desviaciones del hipervolumen (derecha).
1.7

1.65 True POF


NSGA−II/OSD α=0.5 N200
1.6
NSGA−II N200
1.55
1.5 1.6 1.7 1.8 1.9 2 2.1
f1 4
x 10

NSGA−II/OSD vs NSGA−II x 10 NSGA−II/OSD


5 vs NSGA−II
100 2.4
Figura 3. NSGA-II/OSD versus NSGA-II: gráficas de soluciones no-
dominadas con el valor H más próximo al valor medio final en 30 ejecuciones. 90 2.2
% Soluciones diferentes en N

80 2
Número Reparaciones

70 1.8
IV-E. Análisis previo: MOEA/D e importancia de la especi- 60 1.6
ficación del punto de referencia PR 50 1.4

Dos especificaciones del punto de referencia -la de Zhang 40 1.2

y la de Ishibuchi descritas en los apartados II-A y II-B- se 30 1

comparan en esta subsección. La Fig. 6 (izquierda) muestra 20 0.8

NSGA−II/OSD α=0.5 N200 NSGA−II/OSD α=0.5 N200


los valores del hipervolumen medio H al variar el valor α en la 10
NSGA−II N200
0.6
NSGAII N200
especificación de Zhang del punto de referencia en MOEA/D 0
0 500 1000 1500 2000
0.4
1 5 10 15 20 25 30
Generación Ensayo
según la ecuación (3). El valor H crece hasta un valor máximo
(cuando α =1.2) para luego volver a decrecer. También se
Figura 5. NSGA-II/OSD versus NSGA-II: Evolución de los porcentajes
pueden observar, en la Fig. 7 (izquierda), los efectos sobre medios de soluciones diferentes en las poblaciones N (izquierda) y de los
la diversidad de los frentes de soluciones alcanzados cuando números de reparaciones de los cromosomas por ensayo (derecha).
α=1.0 (mı́nima diversidad) y α=1.2 (máxima diversidad y
máximo valor de H).

602
XIII Congreso Español en Metaheurı́sticas y Algoritmos Evolutivos y Bioinspirados
MOEA/D MOEA/D MOEA/DZhang vs MOEA/DIshibuchi
4.1 4.1 100

90
Zhangte α=1.2 N200
te
Ishibuchi α=0.0 N200

% Soluciones diferentes en N
80
4 4
Ishibuchite α=5.0 N200
Hipervolumen medio

Hipervolumen medio
70 te
Ishibuchi α=10.0 N200
60 Ishibuchite α=15.0 N200
3.9 3.9
50

40

Zhangte N200 Ishibuchite N200


3.8 3.8 30
te te
Zhang N100 Ishibuchi N100 20

Zhangte N50 Ishibuchite N50 10


3.7 3.7
1 1.05 1.1 1.15 1.2 1.25 1.3 0 0.05 0.1 0.5 1 1.1 2 3 4 510
Valor Parámetro α Valor Parámetro α 0
0 500 1000 1500 2000
Generación

Figura 6. Valores H al variar el parámetro α en la especificación de Zhang


del PR en MOEA/D (izquierda). Valores H al variar el parámetro α en la Figura 9. Evolución de los prcentajes medios de soluciones diferentes en las
especificación de Ishibuchi del PR en MOEA/D (derecha). poblaciones N.

x 10
4 MOEA/D x 10
4 MOEA/D
2.1 2.1

2.05 2.05
y de la desviación de H (Fig. 8 derecha) a lo largo de
2 2 la evolución del algoritmo. No obstante, hay que señalar
1.95 1.95 que el frente de soluciones logrado por MOEA/D con la
1.9 1.9

1.85 1.85
especificación de Ishibuchi es más pobre (ver Fig. 7 derecha)
f2

f2

1.8 1.8 en número de soluciones diferentes en la población N que el


1.75 1.75 logrado usando la especificación de Zhang. En la Fig. 9 se
1.7 1.7

1.65
True POF
te 1.65
True POF
te
muestra que utilizando la especificación de Zhang, MOEA/D
Zhang α=1.2 N200 Ishibuchi α=5.0 N200
1.6
Zhangte α=1.0 N200 1.6
Ishibuchite α=0.0 N200
consigue siempre en toda la evolución del algoritmo un mayor
1.55
1.5 1.6 1.7 1.8 1.9 2 2.1
1.55
1.5 1.6 1.7 1.8 1.9 2 2.1
número de soluciones diferentes en la población N; por otro
f1 4 f1 4
x 10 x 10 lado, en dicha gráfica también se observa que incrementando
Figura 7. Gráficas de soluciones no-dominadas con el valor H más próximo
el valor α usando la especificación de Ishibuchi en MOEA/D,
al valor medio final en 30 ejecuciones: especificación de Zhang del PR hay un decremento del número de soluciones diferentes en N.
(izquierda), especificación de Ishibuchi del PR (derecha).
IV-F. Resultados comparativos: NSGA-II/OSD vs MOEA/D

Utilizando ahora en MOEA/D la especificación de Ishibu- te te


NSGA−II/OSD vs MOEA/DZhang NSGA−II/OSD vs MOEA/DZhang
chi del punto de referencia según las ecuaciones (4) y (5), 4.2 0.14
NSGA−II/OSD α=0.5 N200
también al variar el valor α se obtienen diferentes valores del 4 0.12 te
Zhang α=1.2 N200
hipervolumen H. La Fig. 6 (derecha) señala que el valor H
Hipervolumen medio

3.8 0.1
crece hasta un valor máximo (cuando α≥3) a partir del cual
Desviación media

permanece estable. 3.6 0.08

3.4 0.06
Zhang Ishibuchi Zhang Ishibuchi
MOEA/D vs MOEA/D MOEA/D vs MOEA/D
4.2 0.14 3.2 0.04
Zhangte α=1.2 N200
4 0.12 te NSGA−II/OSD α=0.5 N200
Ishibuchi α=5.0 N200 3 0.02
te
Zhang α=1.2 N200
Hipervolumen medio

3.8 0.1
2.8 0
0 500 1000 1500 2000 0 500 1000 1500 2000
Generación Generación
Desviación

3.6 0.08

3.4 0.06
Figura 10. NSGA-II/OSD versus MOEA/D: Evolución de los valores de los
3.2 0.04
hipervolumenes medio (iquierda) y desviaciones del hipervolumen (derecha).

3 Zhangte α=1.2 N200 0.02


En esta subsección comparamos el algoritmo NSGA-II/OSD
te
Ishibuchi α=5.0 N200
2.8
0 500 1000 1500 2000
0
0 500 1000 1500 2000
propuesto en este trabajo y el algoritmo MOEA/D con espe-
Generación Generación cificación de Zhang del PR, utilizando en ambos algoritmos
aquel valor α que proporcionó el mejor valor del hipervolumen
Figura 8. Evolución de los hipervolumenes medio (iquierda) y desviaciones medio H tras 30 ejecuciones independientes y que según los
del hipervolumen (derecha) usando las especificaciones de Zhang e Ishibuchi
del PR en MOEA/D. experimentos descritos en anteriores apartados fue α=1.2 para
ambos algoritmos. En la Fig. 10 (izquierda) se observa que
Una comparación de MOEA/D usando las especificaciones durante la primera mitad de la evolución de los algoritmos,
de Zhang con el valor α=1.2 e Ishibuchi con valores α≥3, MOEA/D tiene un mejor valor de H luego, los valores H
muestra valores parecidos de la métrica H (Fig. 8 izquierda) obtenidos por ambos algoritmos se igualan justo a partir de

603
XVIII Conferencia de la Asociación Española para la Inteligencia Artificial

que las estrategias usadas con NSGA-II/OSD en las regiones α ∈ [0, 1] muy fácil de usar, que permite balancear la
R2 y R3 (Fig. 1) son a maximizar ambos objetivos. Idéntica diversidad/convergencia del frente de soluciones no-dominadas
conclusión se obtiene con las desviaciones del hipervolumen alcanzado por el algoritmo; para el valor α=1.2 el algoritmo
en la Fig. 10 (derecha). logra su mejor valor de hipervolumen medio.
De otra parte, en la Fig. 11 se observa que el frente de El algoritmo propuesto obtiene muy buen desempeño y
soluciones alcanzado con el método propuesto obtiene más mejores resultados cuando es comparado con NSGA-II. Cuan-
diversidad que el alcanzado por MOEA/D con especificación do NSGA-II/OSD es comparado con MOEA/D con la es-
de Zhang del PR, aunque en términos de convergencia es pecificación del punto de referencia de Zhang según (3),
MOEA/D quien parece tener mejor valor. Estas diferencias en términos de la métrica del hipervolumen medio, ambos
se pueden explicar porque NSGA-II/OSD presenta siempre algoritmos obtienen valores similares. No obstante, NSGA-
un mejor porcentaje de soluciones diferentes en la poblacion II/OSD logra una mayor diversificación de soluciones en el
N durante la evolución del algoritmo tal como se ve en la frente no-dominado final alcanzado, mientras MOEA/D parece
Fig. 12 (izquierda). Finalmente, la Fig. 12 (derecha) muestra alcanzar mejor convergencia.
que NSGA-II/OSD realiza un menor número de reparaciones
de cromosomas para factibilizar las soluciones. AGRADECIMIENTOS
Agradecemos el soporte económico del Departamento de
4
x 10 NSGA−II/OSD vs MOEA/D
te
Zhang Informática y Sistemas de la Universidad de Las Palmas de
2.1
Gran Canaria.
2.05

2 R EFERENCIAS
1.95
[1] Carlos A. Coello Coello, Gary B. Lamont, David A. Van Veldhuizen.
1.9
Evolutionary algorithms for solving multi-objective problems. Springer-
1.85 Verlag Berlin, Heidelberg, 2006.
f2

1.8 [2] K. Deb, A. Pratap, S. Agrawal, T. Meyarivan. A Fast and Elitist


1.75 Multiobjective Genetic Algorithm : NSGA-II. IEEE Transactions on
1.7
Evolutionary Computation, Vol. 6, n2, pages 182-197, 2002.
True POF [3] X. Gandibleux, A. Freville. Tabu search based procedure for solving
1.65
NSGA−II/OSD α=0.5 N200 the 0-1 multiobjective knapsack problem: the two objectives case. J. of
1.6 te
Zhang α=1.2 N200 Heuristics, 6(3): 361-383, 2000.
1.55
1.5 1.6 1.7 1.8 1.9 2 2.1
[4] Hisao Ishibuchi, Kaname Narukawa, Yusuke Nojima. Handling of Over-
f1 x 10
4 lapping Objective Vectors in Evolutionary Multiobjective Optimization.
International Journal of Computational Intelligence Research 1(2005):
1-18, 2005
Figura 11. NSGA-II/OSD versus MOEA/D: gráficas de soluciones no-
[5] Hisao Ishibuchi, Naoya Akedo, Yusuke Nojima. Behavior of multiob-
dominadas con el valor H más próximo al valor medio final en 30 ejecuciones.
jective evolutionary algorithms on many-objective knapsack problems.
IEEE Transactions on Evolutionary Computation 19(2), 2015.
[6] Hisao Ishibuchi, Ken Doi, Yusuke Nojima. Reference Point Specification
te te
NSGA−II/OSD vs MOEA/D
Zhang
x 10NSGA−II/OSD
5 vs MOEA/D
Zhang in MOEA/D for Multi-Objective and Many-Objective Problems. 2016
100 2.4
IEEE International Conference on Systems, Man, and Cybernetics
90 2.2 (SMC), 2016.
[7] R. Saborido, A.B. Ruiz, M. Luque. Global WASF-GA: An Evolutionary
% Soluciones diferentes en N

80 2
Número Reparaciones

70 1.8 Algorithm in Multiobjective Optimization to approximate the whole


60 1.6
Pareto Optimal Front. Evolutionary Computation 25(2): 309-349, 2017.
50 1.4
[8] Mingzhao Wang, Yuping Wang, Xiaoli Wang. A Space Division Mul-
tiobjective Evolutionary Algorithm Based on Adaptive Multiple Fitness
40 1.2
Functions. International Journal of Pattern Recognition and Artificial
30 1
Intelligence 30(3), 2016.
20 0.8 [9] Rui Wang, Jian Xiong, Hisao Ishibuchi, Guohua Wu, Tao Zhang. On
NSGA−II/OSD α=0.5 N200 NSGA−II/OSD α=0.5 N200
10 te 0.6 te the effect of reference point in MOEA/D for multi-objectiveoptimization.
Zhang α=1.2 N200 Zhang α=1.2 N200
0 0.4 Applied Soft Computing 58(2017): 25-34, 2017.
0 500 1000 1500 2000 1 5 10 15 20 25 30
Generación Ensayo [10] Yuping Wang, Chuangyin Dang. Improving Multiobjective Evolutionary
Algorithm by Adaptive Fitness and Space Division. In: Wang L., Chen
K., Ong Y.S. (eds) Advances in Natural Computation. ICNC 2005.
Figura 12. NSGA-II/OSD versus MOEA/D: Evolución de los porcentajes LNCS, vol 3612. Springer, Berlin, Heidelberg, 2005.
medios de soluciones diferentes en las poblaciones N (izquierda) y de los [11] Zhenkun Wang, Qingfu Zhang, Hui Li, Hisao Ishibuchi, Licheng Jiao.
números de reparaciones de los cromosomas por ensayo (derecha). On the use of two reference points in decomposition based multiob-
jective evolutionary algorithms. Swarm and Evolutionary Computation
34(2017): 89-102, 2017.
V. C ONCLUSIONES [12] Q. Zhang and H. Li. MOEA/D: A multi-objective evolutionary algorithm
En este trabajo se propone un algoritmo evolutivo multi- based on decomposition. IEEE Trans. Evol. Comput., 11(6): 712-731,
2007.
objetivo (NSGA-II/OSD) que hibridiza NSGA-II. El algorit- [13] E. Zitzler, L. Thiele, Multiobjective optimization using evolutionary
mo subdivide el espacio de los objetivos en varias regiones algorithms - A comparative case study, In A.E. Eiben et al. (Eds.):
utilizando la solución Nadir calculada en cada generación Parallel Problem Solving from Nature, LNCS, Volume 1498, pages 292-
301, Springer, Heidelberg, 1998.
del algoritmo. Las distintas subdivisiones utilizan diferentes
estrategias de optimización de las funciones objetivo. El algo-
ritmo NSGA-II/OSD propuesto permite definir un parámetro

604
XIII Congreso Español en Metaheurı́sticas y Algoritmos Evolutivos y Bioinspirados

Algoritmo Evolutivo Multi-Objetivo para la Toma


de Decisiones Interactiva en Optimización Dinámica
Cristóbal Barba-González José M. Garcı́a-Nieto Ana B. Ruiz
Lenguajes y Ciencias de la Computación Lenguajes y Ciencias de la Computación Economı́a Aplicada (Matemáticas)
Universidad de Málaga Universidad de Málaga Universidad de Málaga
Málaga, España Málaga, España Málaga, España
cbarba@lcc.uma.es jnieto@lcc.uma.es abruiz@uma.es

Antonio J. Nebro Mariano Luque José F. Aldana-Montes


Lenguajes y Ciencias de la Computación Economı́a Aplicada (Matemáticas) Lenguajes y Ciencias de la Computación
Universidad de Málaga Universidad de Málaga Universidad de Málaga
Málaga, España Málaga, España Málaga, España
antonio@lcc.uma.es mluque@uma.es jfam@lcc.uma.es

Resumen—Debido al creciente interés en el análisis de datos en multi-objetivo deben poder detectar cuándo cambia el proble-
streaming en entornos Big Data para la toma de decisiones, cada ma y aplicar una estrategia para adaptarse a los cambios.
vez es más común la aparición de problemas de optimización Sin embargo, analizar soluciones preferidas en el frente de
dinámica que involucran dos o más objetivos en conflicto. Sin
embargo, los enfoques que combinan optimización dinámica Pareto aproximado y compararlas al mismo tiempo puede ser
multi-objetivo con la articulación de preferencias para la toma una tarea difı́cil en el proceso de toma de decisiones, espe-
de decisiones son todavı́a escasos. En este artı́culo, proponemos cialmente en presencia de muchos objetivos. De hecho, puede
un nuevo algoritmo de optimización dinámica multi-objetivo ser computacionalmente costoso generar una gran cantidad de
llamado InDM2, que permite incorporar preferencias del experto soluciones que aproximen todo el frente de Pareto, particu-
(humano) de cara a la toma de decisiones para guiar el proceso
de búsqueda. Con InDM2, el decisor no solo puede expresar larmente cuando se tratan problemas reales de la industria.
sus preferencias mediante uno o más puntos de referencia (que Incluso, puede suponer un esfuerzo innecesario si el decisor
definen la región de interés deseada), sino que estos puntos está únicamente interesado en un subconjunto de soluciones
también se pueden modificar de manera interactiva. La propuesta ubicadas en un región particular.
incorpora métodos para mostrar gráficamente las diferentes Una forma de aliviar estos problemas es incorporar infor-
aproximaciones de la región de interés obtenidas durante el pro-
ceso de optimización. El decisor puede ası́ inspeccionar y cambiar, mación sobre las preferencias del decisor en la metaheurı́stica
en tiempo de optimización, la región de interés de acuerdo con la multi-objetivo, para enfocar progresivamente el proceso de
información mostrada. Las principales caracterı́sticas de InDM2 búsqueda sobre aquel subconjunto de soluciones que corres-
son descritas y se analiza su funcionamiento mediante casos de ponden a estas preferencias, conocido como la región de
uso académicos. interés. Por lo tanto, en lugar de aproximar todo el frente
Index Terms—Optimización Multi-Objectivo Dinámica, Toma
de Decisiones, Selección de Preferencias, Algoritmos Interactivos
de Pareto, la idea es aproximar sólo la región de interés.
Mientras que el manejo de preferencias ha sido ampliamente
estudiado en su aplicación para MOPs estáticos en el campo
I. I NTRODUCCI ÓN de la toma de decisiones multi-criteria (Multiple Criteria De-
cision Making - MCDM) [7]–[9], apenas se ha explorado en la
En la actualidad, aunque la mayorı́a de los esfuerzos se optimización dinámica de múltiples objetivos. En ese sentido,
centran en abordar problemas de optimización multi-objetivo en un contexto donde el frente de Pareto puede cambiar con
(MOP) estáticos, existe un creciente interés en aquellos esce- el tiempo, la especificación de preferencias que determinan
narios en los que el problema cambia de alguna manera con la región de interés puede ser difı́cil debido al hecho de
el tiempo, es decir, MOP dinámicos o DMOPs [1]. que el problema en sı́ cambia constantemente. Por lo tanto,
Recientemente, han ido apareciendo varias propuestas de una metaheurı́stica de optimización dinámica multi-objetivo
metaheurı́sticas para la resolución de DMOPs [2]–[5]. Al tratar que incorpore preferencias, deberı́a prestar atención especial
con un DMOP, siempre que existan cambios en el entorno que a estas dos caracterı́sticas simultáneamente: (1) visualización,
afecten a las soluciones del problema (es decir, en la población para proporcionar al decisor una imagen gráfica de las aproxi-
o en el conjunto de soluciones en el frente de Pareto), el maciones de la región o regiones de interés de los frentes de
algoritmo de optimización debe reaccionar para adaptar la Pareto que se encuentran durante el proceso de optimización;
búsqueda a las nuevas caracterı́sticas del problema [6]. Esto y (2) interactividad, para permitir que el decisor pueda indicar
significa que las metaheurı́sticas de optimización dinámica nueva información si quiere redefinir sus preferencias (es decir,

605
XVIII Conferencia de la Asociación Española para la Inteligencia Artificial

indicar una nueva región de interés) en base a su experiencia creto, se utilizan las metaheurı́sticas interactivas WASF-
previa y al conocimiento que progresivamente adquiere sobre GA y R-NSGA-II como optimizador base para los dos
el problema al interactuar con el proceso de optimización. ejemplos sobre el problema FDA2.
Con esta motivación, proponemos en este artı́culo InDM2 El resto del artı́culo se organiza de la siguente forma. La
(Interactive Dynamic Multi-Objective Decision Making), una Sección II está dedicada a describir conceptos previos nece-
nueva propuesta algorı́tmica que cumple con estos requisitos. sarios para la explicación de la propuesta. En la Sección III,
InDM2 está diseñado para actuar como framework algorı́tmico se describen la estructura y los principales componentes de
bajo el que se puede incorporar cualquier metaheurı́stica de InDM2. La Sección IV explica los experimentos realizados a
optimización multi-objetivo basada en puntos de referencia, modo de caso de uso. Finalmente, la Sección V recoge las
para la articulación de preferencias, delegando ası́ en él el principales conclusiones y trabajo futuro.
proceso de resolución del DMOP. Un punto de referencia
está formado por valores de aspiración que el decisor desea II. C ONCEPTOS P REVIOS
alcanzar para cada una de las funciones objetivo.
Una forma común de expresar preferencias consiste en
En particular, hemos considerado una versión dinámica de
indicar valores deseables para las funciones objetivo, que
dos algoritmos evolutivos basados en puntos de referencia:
constituyen las componentes de lo que se conoce como punto
WASF-GA [10] y R-NSGA-II [11]. El proposito de WASF-
de referencia. Este concepto se introdujo en [12] para MOP
GA es aproximar la región de interés determinada por el punto
estáticos, aunque se puede adaptar fácilmente a DMOP.
de referencia mediante el uso de una función escalarizada de
Para un DMOP con k funciones objetivo, en un ins-
logro [12] y un conjunto de vectores de pesos. Para ello, se
tante de timpo t, un punto de referencia viene dado por
clasifican los individuos en fronteras en base a los valores
qt = (qt,1 , . . . , qt,k )T , donde qt,i es un nivel de aspiración
que alcanzan para dicha función. El algoritmo R-NSGA-II
para la función objetivo fi (·, t) proporcionada por el decisor
considera como información preferencial uno o varios puntos
(i = 1, . . . , k). Por lo general, se dice que qt es alcanzable
de referencia y modifica la distancia crowding y el operador
si existe, al menos, una solución factible del problema t
niching de NSGA-II [13] para enfatizar las soluciones cercanas
cuyo vector objetivo iguala o domina qt . De lo contrario, se
al/los punto(s) de referencia dado(s) por el decisor.
dice que el punto de referencia es inalcanzable, es decir, no
InDM2 incorpora un mecanismo que permite al decisor (si
todos los niveles de aspiración se pueden alcanzar o dominar
ası́ lo desea) actualizar interactivamente el punto de referencia
simultáneamente.
al resolver un DMOP. Además, ofrece un mecanismo para
Para un punto de referencia qt , se puede minimizar la fun-
visualizar “sobre la marcha” las aproximaciones de la región
ción escalarizada de logro propuesta en [12] sobre el conjunto
de interés que se generan a lo largo del proceso de solución.
factible, para encontrar la solución óptima de Pareto que mejor
Además, InDM2 se ha implementado con jMetalSP [14], por
satisfaga las expectativas del decisor en el instante t. Dado un
lo que todas las caracterı́sticas de esta librerı́a algorı́tmica están
vector de pesos en el instante t, µt = (µt,1 , . . . , µt,k )T con
incorporadas en la propuesta, incluida la posibilidad de utilizar
µt,i > 0 (i = 1, . . . , k), y un valor real pequeño ρ ≥ 0, la
tecnologı́as Big Data, como Apache Spark. Esto permite, por
función de logro propuesta en [12] viene dada por:
ejemplo, procesar en streaming los datos almacenados en
HDFS (el sistema de archivos Hadoop [15]), además de usar s(qt , f (x, t), µt ) = máx { µt,i (fi (x, t) − qt,i ) }+
toda la potencia de los clústeres Spark. i=1,...,k

Ası́, las principales contribuciones de este artı́culo son: k


X
Se presenta InDM2, un novedoso algoritmo que combina +ρ µt,i (fi (x, t) − qt,i ).
optimización dinámica multi-objetivo, toma de decisio- i=1
nes multi-criterio e interactividad. Una caracterı́stica cla-
III. P ROPUESTA A LGOR ÍTMICA : I N DM2
ve en InDM2 es el mecanismo para visualizar, en tiempo
de optimización, las aproximaciones de la región de El componente principal de InDM2 es una metaheurı́stica
interés que se generan, junto con la posibilidad de indicar multi-objetivo dinámica basada en preferencias, que actúa
puntos de referencia para guiar estas aproximaciones. como motor de optimización. Una descripción más detallada
La propuesta se ha implementado dentro del framework de la implementación se puede encontrar en [16]. Para este
jMetalSP, por lo que se puede utilizar para optimización trabajo, se han implementado nuevas versiones dinámicas de
en contextos Big Data, aprovechando las caracterı́sticas los algoritmos WASF-GA y R-NSGA-II de la siguente manera.
del procesamiento de datos en streaming distribuido La arquitectura orientada a objetos de jMetalSP permi-
de Apache Spark. Esta implementación está disponible te reutilizar la plantilla de algoritmos evolutivos proporcio-
como código abierto en repositorio GitHub de jMetalSP1 . nada por jMetal2 . Esta plantilla tiene un método run()
Se presentan dos casos de estudio para ilustrar el fun- que codifica el pseudo-código de un algoritmo evolutivo
cionamiento de InDM2 en la resolución de problemas genérico. Las implementaciones de las versiones dinámicas
dinámicos del benchmark FDA para DMOPs [6]. En con- de WASF-GA y R-NSGA-II siguen esta plantilla, por lo
1 https://github.com/jMetal/jMetalSP 2 https://jmetal.github.io/jMetal/

606
XIII Congreso Español en Metaheurı́sticas y Algoritmos Evolutivos y Bioinspirados

que el desarrollo de InDM2 sobre WASF-GA y R-NSGA- Eliminar las peores N ′ soluciones de acuerdo a la dis-
II requiere simplemente la redefinición de dos métodos. En tancia crowding.
primer lugar, se debe adaptar el comportamiento del método Eliminar las peores N ′ soluciones de acuerdo a su
isStoppingConditionReached(), ya que en lugar de contribución en hypervolumen con respecto a la última
simplemente terminar el algoritmo, este método debe hacer aproximación de la región de interés.
que la aproximación de la región de interés esté disponible El pseudo-código del InDM2 se muestra en el Algoritmo 1.
para los métodos consumidores de datos de InDM2. De esta Después de la fase de inicialización (lı́neas 1-14), el algoritmo
forma, el algoritmo de optimización subyacente (basado en inicia el ciclo infinito (lı́nea 15) que lleva a cabo múltiples
WASF-GA o R-NSGA-II) pueda comenzar de nuevo teniendo rondas consecutivas de optimización dinámica y consumo de
en cuenta esta información. En segundo lugar, al final de datos resultado (visualización). Cada ronda de optimización
cada iteración, el método updateProgress() incrementa (lı́neas 16-25) implica un número máximo de iteraciones
un contador de evaluación. (Gmax ) en las que se ejecuta el algoritmo evolutivo basado
Para permitir que el decisor pueda actualizar el(los) punto(s) en preferencias (es decir, WASF-GA o R-NSGA-II, lı́nea 17),
de referencia “sobre la marcha”, InDM2 lee el(los) nuevo(s) y se invocan los procedimientos de reinicio cada vez que se
punto(s) de referencia desde teclado (aunque podrı́an usar- detecta un cambio en el punto de referencia (lı́nea 18) o en
se otros métodos más sofisticados). Este evento se detecta el estado del problema (lı́nea 20). Al final de cada iteración,
mediante el método updateProgress(). Para ayudar al la aproximación de la región de interés encontrada se envı́a a
decisor a dar un nuevo punto de referencia de acuerdo con sus los consumidores de datos (lı́nea 25) y el ciclo comienza de
preferencias y teniendo en cuenta los resultados obtenidos, se nuevo.
ha incluido un consumidor de datos gráfico. Por lo tanto, las
aproximaciones de la región de interés generadas por InDM2 Algorithm 1 Pseudo-código InDM2
se muestran cuando se producen, por lo que el decisor puede 1: N ; // Tamaño de población
visualizarlas y cambiar los puntos de referencia como desee. 2: N ′ ; // Número de soluciones a reemplazar
Por defecto, InDM2 siempre está funcionando. Esto sig- 3: Gmax ; // Número máximo de generaciones
nifica que, si el DMOP no cambia durante un perı́odo de 4: c, m ; // Operadores genéticos (cruze y mutación)
5: t ← 0 ; // Contador de generación
tiempo, el algoritmo lo resolverá una y otra vez, utilizando 6: At ; // Estado del problema de optimización
exactamente la misma configuración del problema. Como 7: qt ; // Punto(s) de referencia inicial(es)
consecuencia, si el algoritmo converge la mayorı́a de las 8: P ; // Algoritmo de optimización basado en preferencias
veces, la misma aproximación de la región de interés (o una 9: ϕq ; // Estrategia de reinicio ante cambios del punto de referencia
muy similar, dado que estamos usando enfoques estocásticos) 10: ϕp ; // Estrategia de reinicio ante cambios del problema
11: M ← {WASF-GA, R-NSGA-II} ; // Optimizadores base
se mostrará constantemente. Esto puede ser confuso para el 12: Pt ← initializeP opulation(N ) ;
decisor, ya no percibirá cambios evidentes por un perı́odo 13: evaluate(Pt , At ) ;
de tiempo. Para evitar esta situación, el consumidor de datos 14: Et ← initializeP aretoSet(Pt ) ;
gráficos solo muestra una nueva aproximación en caso de que 15: while true do
ésta haya cambiado significativamente, en comparación con la 16: while t < Gmax do
17: (Pt+1 , Et+1 ) ← compute(M, qt , c, m, Pt , At ) ;
anterior mostrada. Para verificar esto, se calcula internamente 18: if qt+1 6= qt then
el indicador distancia generacional invertida (IIGD ) [17] desde 19: ′
Pt+1 ← restart(Pt+1 , ϕq , qt+1 , N ′ ) ;
la aproximación de la región de interés actual, hasta la anterior. 20: else if At+1 6= At then

La nueva aproximación se mostrará únicamente si el valor de 21: Pt+1 ← restart(Pt+1 , ϕp , At+1 , N ′ ) ;
este indicador es inferior a un umbral τ . 22: end if
23: t←t+1 ;
Todos los DMOP disponibles en jMetalSP tienen un método 24: end while
para averiguar si el problema ha cambiado o no. Por lo tanto, 25: C : (Et+1 , τ ) ; // Notifica aproximación a consumidores
InDM2 solo tiene que llamar a este método al final de cada 26: t←0;
iteración (es decir, en el método updateProgress()), para 27: end while
saber si el parámetro del problema ha cambiado.
Una vez que se ha detectado un cambio en el problema
y/o punto(s) de referencia, un aspecto clave en InDM2 es la IV. E XPERIMENTOS
estrategia de reinicio. Hemos adoptado un enfoque flexible El objetivo de este estudio no es tanto la realización de
que consiste en definir el reinicio de acuerdo con otras dos comparativas exhaustivas de rendimiento algorı́tmico, sino el
subestrategias: una para eliminar soluciones de la población de ilustrar cómo funciona InDM2 en la práctica, cuando
y otra para llenar la población con nuevas soluciones. Para interactúa con un decisor, para ası́ mostrar los beneficios
llenar la población, dado un valor N ′ > 0, la estrategia potenciales de la propuesta desde el punto de vista de la toma
seguida es crear al azar N ′ nuevas soluciones. Para eliminar de decisiones.
las soluciones, se pueden configurar las siguentes estrategias: En este sentido, se ha probado InDM2 con el problema
Eliminar las primeras N ′ soluciones. FD2, introduciendo manualmente las preferencias (es decir,
Eliminar N ′ soluciones aleatorias. los puntos de referencia) durante el tiempo de ejecución. La

607
XVIII Conferencia de la Asociación Española para la Inteligencia Artificial
Tabla I: Configuración de InDM2.
InDM2W
Parámetros
Tamaño de población 50 Front 1
Probabilidad de cruze 0.9 Front 15

0.8
Objective 2
Front 24
Probabilidad de mutación 1/L (L = número de variables) Front 33
Número máximo de evaluaciones 25,000 Front 43
Reinicio por punto de referencia Eliminar 100 % de las soluciones Front 53
63

0.4
Front 63
72
Generar 100 % de soluciones aleatoriamente Front 72
Reinicio por cambio de problema Eliminar 50 % de soluciones (hypervolumen)
Generar 50 % de soluciones aleatoriamente
Reference Point[0.0,0.0]

0.0
Comsumidores de datos
Visualizador gráfico Muestra frentes y puntos de referencia
Front writer Carga los frentes generados en ficheros 0.0 0.2 0.4 0.6 0.8 1.0
Streaming runtime Objective 1
Mecanismo Java threads
InDM2W
idea es observar cómo InDM2 puede adaptar el proceso de Reference Point[1.0,1.0]

0.8
optimización a los cambios (tanto en la configuración del

Objective 2
problema como en las preferencias), mostrando ası́ el efecto de Front 1
estos cambios en las aproximaciones de los frentes de Pareto Front 15

0.4
Front 24
Front 33
obtenidas. Nos referimos a las dos configuraciones de InDM2 Front 43
Front 63
para los optimizadores base WASF-GA y R-NSGA-II como Front 72

0.0
Front 82

InDM2W y InDM2R , respectivamente. 0.0 0.2 0.4 0.6 0.8 1.0


El problema FD2 es un DMOPs de representación continua Objective 1
perteneciente al benchmark FDA [6]. Cada problema de esta
familia tiene dependencia con j kel tiempo t, que se define Figura 1: Aproximaciones de región de interés encontradas
mediante la ecuación t = n1t σσT , en la que σ es un contador por InDM2W para el problema FD2, utilizando los puntos de
de generaciones, σT es el número de generaciones en las que referencia (0.0, 0.0) (arriba) y (1.0, 1.0) (abajo).
t permanece fijo y nt es la cantidad de pasos distintos en t.
Para un número real a, ⌊a⌋ denota el entero más grande no
mayor a a. En [6], los autores recomiendan establecer σT = 5 mostrar los frentes de Pareto aproximados que se generan y
y nt = 10. otra para guardar estas aproximaciones en archivos. En este
La formulación de FDA2 se puede encontrar en [6], por lo estudio, solo se considera una fuente de datos, es decir, no
que siguiendo lo recomendado en este trabajo, se han utilizado hay ninguna ventaja de utilizar Apache Spark, por lo que
soluciones de 31 variables con xI = x1 , |xII | = |xIII | = 15. hemos configurado el tiempo de ejecución en hebras de manera
Este problema se ha seleccionado debido a que las aproxima- predeterminada.
ciones de frentes de Pareto y sus conjuntos de Pareto cambian El problema de optimización dinámica FDA2 se define
en el tiempo (tipo II [6]). Por lo tanto, los cambios dinámicos con dos objetivos y frentes de Pareto que cambian de forma
en las aproximaciones causadas por cambios en el punto de convexa a cóncava y vice-versa, con conjuntos de Pareto que
referencia se pueden visualizar fácilmente. también cambian con el tiempo.
La Tabla I muestra la configuración de parámetros utilizada Para tener una idea de los posibles valores de aspiración
para InDM2. La condición de parada utilizada para informar (deseables) que cada objetivo puede tener durante el proceso
de los resultados a los procesos consumidores es alcanzar un de búsqueda, se ha ejecutado inicialmente InDM2W utili-
máximo de 25,000 evaluaciones. Los operadores de variación zando dos puntos de referencia: el punto ideal (0.0, 0.0)
son SBX como operador de cruce y el de mutación polinómica. (inalcanzable) y el punto nadir (1.0, 1.0) (alcanzable). Las
El operador de selección es torneo binario. Para la estrategia aproximaciones producidas por InDM2W para las regiones
de reinicio al detectar un cambio en el problema, en primer de interés de ambos puntos de referencia se muestran en la
lugar, se elimina el 50 % de las soluciones de acuerdo con la Figura 1. En esta figura, las leyendas “Fronti ” marcan las
contribución de hipervolumen; en segundo lugar, se llena la aproximaciones de la región de interés que se muestran. Cada
población con nuevas soluciones creadas aleatoriamente. La una de estas leyendas indica implı́citamente en qué iteración
estrategia de reinicio cuando se proporciona un nuevo punto i se detectó una mejora significativa en la aproximación
de referencia es similar, pero en este caso se eliminan todas generada, en comparación con la anterior mostrada (como se
las soluciones de la población (100 %). explicó en la Sección III, una nueva aproximación se muestra
Para generar los eventos temporales que conducirán a gráficamente solo en caso de que se haya detectado una mejora
cambios en el problema FDA2, hemos utilizado una fuente significativa con respecto al indicador IIGD ).
simple de transmisión de datos que cuenta cada segundo, En la Figura 1, podemos observar que cuando la región
lo que implica que, con un valor predeterminado de σT , de interés aproximada es convexa, la distribución de las
el problema se actualiza con una frecuencia de 5 segundos. soluciones en las aproximaciones encontradas es ligeramente
Además, hemos utilizado dos consumidores de datos, uno para más densa en las regiones centrales que en las extremas,

608
XIII Congreso Español en Metaheurı́sticas y Algoritmos Evolutivos y Bioinspirados

InDM2W InDM2R

Front 1 Front 1

0.8

0.8
Objective 2

Objective 2
Front 9 Front 2
Front 15 Front 4
0.4

0.4
Reference Point[0.0,0.0] Reference Point[0.0,0.0]
0.0

0.0
0.0 0.2 0.4 0.6 0.8 1.0 0.0 0.2 0.4 0.6 0.8 1.0
Objective 1 Objective 1
InDM2W InDM2R

Front 1 Front 1
0.8

0.8
Front 9 Front 2
Objective 2

Objective 2
Front 15 Front 4
Front 22
Front 5
Front 25
0.4

0.4
Front 31 Front 6
Front 8

Reference Point[0.2,0.2]
0.0

0.0
Reference Point[0.2,0.2]
0.0 0.2 0.4 0.6 0.8 1.0 0.0 0.2 0.4 0.6 0.8 1.0
Objective 1 Objective 1

InDM2W InDM2R
1.0

1.0
Front 1 Front 1
Front 9 Front 2
0.8

0.8
Objective 2

Objective 2

Front 15 Front 4
Front 22 Front 5
0.6

0.6

Front 25 Front 6
Front 31 Front 8
Front 39 Front 9
0.4

0.4

Front 11
Front 48
Reference Point[0.6,0.4] Front 57
Front 12
0.2

0.2

Reference Point[0.6,0.4]
0.0

0.0

0.0 0.2 0.4 0.6 0.8 1.0 0.0 0.2 0.4 0.6 0.8 1.0

Objective 1 Objective 1

InDM2W InDM2R
Reference Point[0.7,0.9] Reference Point[0.7,0.9]
0.8

0.8

Front 1 Front 1
Objective 2

Objective 2

Front 9 Front 2
Front 15 Front 4
Front 22 Front 5
Front 25 Front 6
Front 31 Front 8
0.4

0.4

Front 39 Front 9
Front 48 Front 11
Front 57 Front 12
Front 61 Front 16
Front 66 Front 17
0.0

0.0

Front 75 Front 18

0.0 0.2 0.4 0.6 0.8 1.0 0.0 0.2 0.4 0.6 0.8 1.0
Objective 1 Objective 1

Figura 2: Aproximaciones de la región de interés encontradas por InDM2W (izquierda) e InDM2R (derecha) para el problema
FDA2, utilizando diferentes puntos de referencia.

extendiéndose de manera uniforme cuando la región apro- realista en el que el decisor modifica sobre la marcha el
ximada tiende a ser más lineal. Esto viene determinado por punto de referencia para indicar la región deseada, varias
la distribución de las direcciones de proyección (es decir, veces durante el proceso de optimización. La Figura 2 muestra
vectores de peso) utilizadas internamente en WASF-GA, lo que las aproximaciones generadas para los puntos de referencia
influye en la distribución de las soluciones encontradas. Para indicados a lo largo del proceso de optimización de InDM2,
ambos puntos de referencia, InDM2W ha podido aproximar para los dos algorithmos base: InDM2W y InDM2R .
la región de interés (que, como se puede ver, es el frente de En el proceso interactivo de optimización seguido por
Pareto completo en ambos casos) al adaptar el proceso de InDM2W , suponiendo que los rangos del frente de Pareto para
búsqueda a los cambios en el problema. problema FDA2 son desconocidos, el decisor seleccionó ini-
A continuación, se realizaron pruebas con InDM2W e cialmente (0.0, 0.0) como primer punto de referencia. Después
InDM2R para FDA2, pero en este caso, se simuló un escenario de observar las tres primeras aproximaciones devueltas por

609
XVIII Conferencia de la Asociación Española para la Inteligencia Artificial

InDM2W en las iteraciones 5, 9 y 15 (véase la gráfica superior consecuencia del uso de Spark es la ventaja de trabajar con
izquierda en la Figura 2), el decisor decidió dar un nuevo punto tecnologı́as Big Data, lo que nos permite desplegar InDM2 en
de referencia para reducir la región de interés aproximada clusters Hadoop y acceder a datos en HDFS.
y establecerlo en (0.2, 0.2). Podemos observar las nuevas Como trabajo futuro, se pretende estudiar el rendimiento
aproximaciones generadas en el segundo gráfico a la izquierda de InDM2 en problemas complejos del mundo real, usando
en la Figura 2. En este gráfico, las primeras aproximaciones preferencias y cambiándolas interactivamente por un decisor
generadas para el punto de referencia inicial (0.0, 0.0) se experto en el dominio de aplicación.
muestran con lı́neas continuas, para poder distinguirlas de las
AGRADECIMIENTOS
nuevas aproximaciones encontradas para el nuevo punto de
referencia (0.2, 0.2), que se muestran con lı́neas punteadas. Este trabajo ha sido financiado por los proyectos TIN2017-86049-
R, TIN2014-58304-R, ECO2017-88883-R (MECD) y P12-TIC-1519
Más tarde, el decisor volvió a ajustar la región de interés (PAIDI). J. M. Garcı́a-Nieto y A. B. Ruiz disfrutan una beca Post-
cambiando el punto de referencia dos veces, indicando (0.6, Doctoral “Captación de Talento para la Investigación”, Universidad
0.4) como tercer punto de referencia y (0.7, 0.9) como el de Málaga. C. Barba-González dispone de un beca pre-doctoral BES-
cuarto. Respectivamente, los resultados obtenidos para estos 2015-072209.
dos nuevos puntos de referencia se muestran en las gráficas R EFERENCIAS
tercera y cuarta a la izquierda en la misma figura.
[1] C. Raquel and X. Yao, “Dynamic multi-objective optimization: A
Respecto a los frentes obtenidos por InDM2R en las gráficas survey of the state-of-the-art,” in Evolutionary Computation for Dynamic
de la derecha en la Figura 2, se puede observar cómo la Optimization Problems (2013), S. Yang and X. Yao, Eds. Springer,
aproximación de las regiones de interés producidas por esta va- 2013, pp. 85–106.
[2] S. Jiang and S. Yang, “A steady-state and generational evolutionary
riante tienen peor diversidad que las generadas por InDM2W . algorithm for dynamic multiobjective optimization,” IEEE Transactions
Nótese que las soluciones generadas por InDM2W siempre on Evolutionary Computation, vol. 21, no. 1, pp. 65–82, 2017.
pertenecen a la región de interés delimitada por los puntos [3] X. Chen, D. Zhang, and X. Zeng, “A stable matching-based selection and
memory enhanced MOEA/D for evolutionary dynamic multiobjective
de referencia, mientras que algunas de las encontradas por optimization,” in Int. Conf. on Tools with AI, 2015, pp. 478–485.
InDM2R también aproximan zonas fuera de esta región. Esto [4] Y. Jin, C. Yang, J. Ding, and T. Chai, “Reference point based prediction
es consecuencia de las capacidades de búsqueda (convergencia for evolutionary dynamic multiobjective optimization,” in Proc. of the
IEEE Cong. on Evol. Comp, 2016, pp. 3769–3776.
y diversidad con respecto a la región de interés) de WASF- [5] A. Muruganantham, K. C. Tan, and P. Vadakkepat, “Evolutionary
GA y R-NSGA-II, lo que evidencia el impacto que puede tener dynamic multiobjective optimization via kalman filter prediction,” IEEE
el algoritmo evolutivo basado en preferencias utilizado como Transactions on Cybernetics, vol. 46, no. 12, pp. 2862–2873, 2016.
[6] M. Farina, K. Deb, and P. Amato, “Dynamic multiobjective optimization
base en InDM2. problems: test cases, approximations, and applications,” IEEE Transac-
Según la Figura 2, podemos ver que tres de los puntos de tions on Evolutionary Computation, vol. 8, no. 5, pp. 425–442, 2004.
referencia dados en el proceso interactivo de optimización son [7] K. Miettinen, Nonlinear Multiobjective Optimization. Boston: Kluwer
Academic Publishers, 1999.
inalcanzables: (0.0, 0.0), (0.2, 0.2) y (0.6, 0.4); y uno de ellos [8] A. Jaszkiewicz and J. Branke, “Interactive multiobjective evolutionary
es alcanzable (0.7, 0.9). Cabe señalar que, en la práctica, la algorithms,” in Multiobjective Optimization, Interactive and Evolutio-
alcanzabilidad de los puntos de referencia no puede conocerse nary Approaches, ser. LNCS, J. Branke, K. Deb, K. Miettinen, and
R. Slowinski, Eds., vol. 5252. Springer, 2008, pp. 179–193.
de antemano, y solo se puede saber si son alcanzables o no [9] M. Helbig, K. Deb, and A. Engelbrecht, “Key challenges and future
cuando el algoritmo genera soluciones y se verifica su relación directions of dynamic multi-objective optimisation,” in Proc. of the IEEE
de dominancia con respecto al punto de referencia utilizado. Cong. on Evol. Comp., 2016, pp. 1256–1261.
[10] A. B. Ruiz, R. Saborido, and M. Luque, “A preference-based evo-
lutionary algorithm for multiobjective optimization: The weighting
V. C ONCLUSIONES achievement scalarizing function genetic algorithm,” Journal of Global
En este trabajo se ha descrito InDM2, un nuevo framework Optimization, vol. 62, no. 1, pp. 101–129, 2015.
[11] K. Deb, J. Sundar, B. Ubay, and S. Chaudhuri, “Reference point based
algorı́tmico de optimización dinámica que permite incorporar multi-objective optimization using evolutionary algorithm,” Int. Jour. of
cualquier metaheurı́stica multi-objetivo basada en puntos de Comp. Intel. Res., vol. 2, no. 6, pp. 273–286, 2006.
referencia para la articulación de preferencias. Se ha mostrado [12] A. P. Wierzbicki, “The use of reference objectives in multiobjective
optimization,” in Multiple Criteria Decision Making, Theory and Appli-
su funcionamiento mediante la resolución de un problema de cations, G. Fandel and T. Gal, Eds. Springer, 1980, pp. 468–486.
optimización dinámica multi-objetivo de benchmarking (FD2). [13] K. Deb, A. Pratap, S. Agarwal, and T. Meyarivan, “A fast and elitist
A partir de una serie de visualizaciones, se ha demostrado multiobjective genetic algorithm: NSGA-II,” IEEE TEVC, vol. 6, no. 2,
pp. 182–197, 2002.
cómo InDM2 es capaz de generar aproximaciones ajustadas a [14] C. Barba-Gonzalez, J. M. Garcia-Nieto, A. J. Nebro, J. A. Cordero,
las preferencias del decisor en tiempo real, tanto si cambia la J. J. Durillo, I. Navas-Delgado, and J. F. Aldana-Montes, “jMetalSP: A
configuración del problema como si se indican nuevos puntos framework for dynamic multi-objective big data optimization,” Applied
Soft Computing,, vol. to appear, 2017.
de referencia (es decir, cambia la región de interés). [15] T. White, Hadoop: The Definitive Guide. O’Reilly Media, Inc., 2009.
Una caracterı́stica importante de InDM2 viene heredada de [16] A. J. Nebro, A. B. Ruiz, C. Barba-González, J. Garcı́a-Nieto, M. Luque,
su implementación en el framework de jMetalSP, por lo que and J. F. Aldana-Montes, “InDM2: Interactive dynamic multi-objective
decision making using evolutionary algorithms,” Swarm and Evolutio-
dispone de procesamiento en streaming mediante Spark de nary Computation, vol. 40, pp. 184 – 195, 2018.
manera transparente. Esto nos permite incorporar multiples [17] H. Ishibuchi, H. Masuda, Y. Tanigaki, and Y. Nojima, Modified Dis-
fuentes de datos mediante el uso de proveedores, como soc- tance Calculation in Generational Distance and Inverted Generational
Distance. Springer International Publishing, 2015, pp. 110–125.
kets, archivos en un directorio, Kafka, Flume o Kinesis. Otra

610
XIII Congreso Español
de Metaheurísticas,
Algoritmos Evolutivos y
Bioinspirados
(XIII MAEB)
MAEB 6: SESIÓN E SPECIAL:
M ETAHEURÍSTICAS EN
PRODUCCIÓN, L OGÍSTICA Y
D IRECCIÓN DE O PERACIONES
Organizador:
JOAQUÍN BAUTISTA-VALHONDO
XIII Congreso Español en Metaheurı́sticas y Algoritmos Evolutivos y Bioinspirados

A GRASP algorithm to optimize Operational Costs


and Regularity of Production in mixed-model
sequencing problems with forced interruption of
operations*
* Note: The full contents of this paper have been published in the volume Lecture Notes in Artificial Intelligence 11160 (LNAI 11160)

Joaquı́n Bautista-Valhondo Rocı́o Alfaro-Pozo


Universidad Politécnica de Catalunya EAE Business School
Barcelona, Spain Barcelona, Spain
joaquin.bautista@upc.edu ralfaro@eae.es

Abstract—We present a GRASP algorithm to solve a problem


that involves the sequencing of mixed products in an assembly
line. The objective of the problem is to obtain a manufacturing
sequence of models that generates a minimum operational cost
with a forced interruption of operations and that is regular in
production. The implemented GRASP is compared with other
procedures using instances of a case study of the Nissan engine
manufacturing plant in Barcelona.
Index Terms—GRASP, Bounded Dynamic Programming,
Work overload, Operational Cost, Mixed-model Sequencing
Problems

613
XVIII Conferencia de la Asociación Española para la Inteligencia Artificial

Metaheurı́sticas constructivas para Car Sequencing


Problem con Flotas de vehı́culos especiales
Ignacio Moya∗ , Joaquı́n Bautista† , Manuel Chica∗ , Sergio Damas∗ , Oscar Cordón∗
∗ Instituto
Andaluz Interuniversitario DaSCI (Data Science and Computational Intelligence), Universidad de Granada, España
† Nissan Chair, Universidad Politécnica de Catalunya, España

Emails: imoya@ugr.es, manuelchica@ugr.es, sdamas@ugr.es, joaquin.bautista@upc.edu, ocordon@decsai.ugr.es

Resumen—Car sequencing problem (CSP) es un problema tra- de la producción. Una alternativa para tratar esta incertidumbre
dicional de satisfacción de restricciones que refleja los problemas es definir distintos escenarios de producción que sean realistas.
que surgen cuando una serie de vehı́culos se introducen en una La extensión Robust CSP (r-CSP) [2] sigue este enfoque,
cadena de producción. Sin embargo no considera vehı́culos no
regulares o fuera de catálogo, pese a que en plantas reales donde la demanda se define en distintos planes de producción y
pueden llegar a representar entre el 10 % y el 20 % de la el impacto de la variabilidad se mide observando los conflictos
producción. Estos vehı́culos se distinguen de los regulares por que ocurren cuando se cambia de un plan a otro. En este
ser bajo pedido, estar orientados al servicio público, y/o requerir artı́culo estudiamos la resolución de r-CSP utilizando como
componentes poco frecuentes. La extensión Robust CSP (r-CSP) referencia el trabajo anterior para el CSP tradicional, que
sı́ que considera estos vehı́culos, modelando la incertidumbre que
introducen los vehı́culos no regulares como escenarios de produc- comúnmente se resuelve usando metaheurı́sticas. Distintas
ción. Para resolver r-CSP proponemos emplear metaheurı́sticas metaheurı́sticas se han aplicado con éxito al CSP, de las cuales
constructivas que ya han sido efectivas en el CSP tradicional: nosotros destacamos las metaheurı́sticas constructivas GRASP
GRASP y VNS. Evaluamos el rendimiento de estos algoritmos [3] y VNS [4], [5].
en r-CSP extendiendo las instancias disponibles en la literatura El resto del texto sigue la siguiente estructura. La Sección
añadiendo la semántica de flotas de vehı́culos especiales. Nuestros
experimentos reflejan que GRASP muestra mejor rendimiento II revisa la bibliografı́a relevante relacionada con la resolución
en las instancias más sencillas, mientras que VNS se muestra del CSP tradicional. Después presentamos brevemente la for-
superior en las más complejas. malización del r-CSP en la Sección III. La Sección IV describe
Index Terms—Metaheurı́sticas, Lı́neas de montaje, Secuencia- las metaheurı́sticas empleadas en nuestros experimentos. En
ción, Car Sequencing Problem, Flotas de vehı́culos la Sección V presentamos la configuración y los resultados de
nuestros experimentos para el r-CSP. Por último, en la Sección
I. I NTRODUCCI ÓN VI presentamos nuestras conclusiones.

Car Sequencing Problem (CSP) fue introducido por Parello II. T RABAJO RELACIONADO
et al. [1] a consecuencia de la transición de la industria hacia Existen diferentes alternativas para resolver el CSP tra-
la personalización masiva. Es un problema de satisfacción dicional. Encontramos varios métodos exactos basados en
de restricciones que representa las dificultades que surgen programación con restricciones [6], [7], integer programming
al introducir vehı́culos con opciones diferentes en una mis- [8], algoritmos de ramificación y poda [9], o beam search
ma lı́nea de montaje, trasformando restricciones de tiempo, [10], [11]. También encontramos muchos ejemplos de resolu-
espacio, o técnicas en opciones binarias de modo que todo ción usando metaheurı́sticas [5], [12], [13], [14], [15]. Todos
vehı́culo requiera de un conjunto arbitrario de estas opciones. estos métodos se suelen comparar usando el framework de
Estas opciones se modelan indicando las paradas que pueden referencia CSPLib [16].
aparecer en una lı́nea de montaje si muchos vehı́culos seguidos De entre los distintos trabajos que utilizan metaheurı́sticas,
requieren una determinada opción, por lo que cada opción se podemos destacar los métodos basados en búsqueda local,
representa usando un ratio de carga. Este ratio se representa VNS y GRASP. De entre los trabajos que emplean búsqueda
como pi /qi , donde p es el número de vehı́culos que pueden local, el trabajo de Puchta y Gottlieb [17] es especialmente
requerir la opción i en una secuencia de longitud q sin causar relevante dado que introduce nuevos operadores que han sido
paradas en la lı́nea. El objetivo del CSP es encontrar una empleados posteriormente en otros trabajos [3], [5], [12], [13].
secuencia completa de vehı́culos que no sobrecargue ninguna Uno de estos operadores, llamado operador de inversión o
opción en ninguna de sus subsecuencias. Lin2Opt se ha convertido en un operador recurrente. Los
Sin embargo el CSP no considera vehı́culos no regulares métodos de búsqueda local normalmente incluyen heurı́sticas
o fuera de catálogo [2]. Estos vehı́culos se distinguen de voraces para construir la solución inicial, de las cuales en-
los regulares por ser bajo pedido, estar orientados al servicio contramos que la propuesta por Gottlieb et al. [12] es la más
público, y/o requerir componentes poco frecuentes. El impacto empleada [5], [13], [14], [18], [19].
de estos vehı́culos en la cadena genera incertidumbre y afecta a En el caso de VNS y GRASP, las contribuciones más
la producción, ya que pueden alcanzar entre el 10 % y el 20 % relevantes se aplican a extensiones del CSP tradicional. En

614
XIII Congreso Español en Metaheurı́sticas y Algoritmos Evolutivos y Bioinspirados

el caso de VNS, destacamos el trabajo propuesto de Ri- y zj,t,ε . Finalmente, la restricción (11) fija un valor nulo para
beiro et al. [4]. Su versión de VNS combinada con ILS las variables Yj,0,ε (∀j ∈ J, ∀ε ∈ E) en el ciclo virtual t = 0.
terminó en segunda posición en el ROADEF’2005 [20], donde
el problema a resolver era una extensión del CSP tradicional X X
que incluye nuevas restricciones relacionadas con la pintura. xi,t + x′i,t,ε = 1, ∀t ∈ [1, T ], ∀ε ∈ E (1)
Hemos incluido algunas de las caracterı́sticas de su trabajo i∈IX i∈IX′

en nuestro diseño de VNS, como el uso del operador de X


inserción (explicado en la Sección IV-C) como operador en la xi,t = di ∀i ∈ IX (2)
perturbación de la solución. En el caso del GRASP podemos t∈[1,T ]
encontrar trabajos donde se utiliza para resolver extensiones
del CSP tradicional [3], por lo que incluimos estos diseños en
X
x′i,t,ε = di,ε , ∀i ∈ IX′ , ∀ε ∈ E (3)
nuestro estudio. t∈[1,T ]

III. D ESCRIPCI ÓN DEL MODELO X


Xi,t − xi,τ = 0, ∀i ∈ IX , ∀t ∈ [1, T ] (4)
En esta sección describimos las particularidades del CSP τ ∈[1,t]
con flotas de vehı́culos especiales (r-CSP). Este modelo sigue
las siguientes hipótesis de trabajo: X
1. Hay dos conjuntos separados de familias de vehı́culos: X′i,t,ε − x′i,τ,ε = 0,
los regulares IX y los especiales IX′ . τ ∈[1,t] (5)
2. Existe una demanda de vehı́culos regulares DX fija para ∀i ∈ IX′ , ∀t ∈ [1, T ], ∀ε ∈ E
cada plan de producción ε ∈ E.
3. Existe una demanda de vehı́culos especiales DX′ fija para X X
cada plan de producción ε ∈ E. Yj,t,ε − nj,i Xi,t − nj,i X′i,t,ε = 0,
4. La demanda total de vehı́culos T (T ≡ D ≡ DX + DX′ ), i∈IX i∈IX′ (6)
se respeta en todos los planes de producción ε ∈ E. ∀j ∈ J, ∀t ∈ [1, T ], ∀ε ∈ E
5. La demanda para cada vehı́culo regular di , i ∈ IX es la
misma para cada plan de producción ε ∈ E. Esto es,
Yj,t,ε − Yj,t−qj ,ε ≤ pj + T · zj,t,ε ,
di,ε = di , ∀ε ∈ E. (7)
6. La demanda de cada vehı́culo especial i ∈ IX′ puede ∀j ∈ J, ∀t ∈ [qj , T ], ∀ε ∈ E
cambiar para dos planes de producción distintos {ε, ε′} ⊆
E. xi,t ∈ {0, 1}, ∀i ∈ IX , ∀t ∈ [1, T ] (8)
7. Los cambios en la cadena de producción deberı́an ser tan
pocos como sea posible, por lo que las secuencias de
producción πε (T ) y πε′ (T ) deberı́an ser lo más similares x′i,t,ε ∈ {0, 1}, ∀i ∈ IX′ , ∀t ∈ [1, T ], ∀ε ∈ E (9)
posible para cada par de planes {ε, ε′} ⊆ E. Esto es:
πε (T ) ≈ πε′ (T ), ∀{ε, ε′} ⊆ E.
8. Cada vehı́culo regular mantendrá la misma posición en zj,t,ε ∈ {0, 1}, ∀j ∈ J, ∀t ∈ [qj , T ], ∀ε ∈ E (10)
todas las secuencias πε (T ), ∀ε ∈ E.
A continuación incluimos la definición formal de r-CSP
en el ámbito de programación lineal entera mixta. También Yj,0,ε = 0, ∀j ∈ J, ∀ε ∈ E (11)
incluimos un conjunto de restricciones que cualquier secuencia
válida debe cumplir. Las restricción (1) impone que solo un r-CSP define multisecuencias ~π (E, T ) compuestas de se-
vehı́culo (regular o especial) puede asignarse en cada ciclo cuencias individuales πε (T ) = (π1,ε , ..., πT,ε ) para cada plan
de producción t ∈ [1, T ] para todos los planes de producción de producción ε ∈ E, como se muestra en la ecuación
ε ∈ E. Las restricciones (2) y (3) fuerzan a que se satisfaga (12). Los vehı́culos regulares i ∈ I se relacionan con los
la demanda de vehı́culos regulares (IX ) y especiales (IX′ ) elementos πt,ε (∀t ∈ [1, T ], ∀ε ∈ E) de la multisecuencia
en cada plan de producción. La restricción (4) determina ~π (E, T ) por las variables binarias xi,t (∀i ∈ IX , ∀t ∈ [1, T ])
la producción acumulada de la clase de vehı́culos regulares y x′i,t,ε (∀i ∈ IX′ , ∀t ∈ [1, T ], ∀ε ∈ E), como se define
i ∈ IX hasta el ciclo de fabricación t. La restricción (5) es en las ecuaciones (13) y (14). Debemos remarcar que todo
análoga a la anterior, referida a los vehı́culos especiales. La vehı́culo regular (i ∈ IX ) mantiene su posición en la secuencia
restricciones (6) y (7) imponen que el número de veces que se para cada plan de producción, pero las posiciones ocupadas
requiere la opción j ∈ J de manera consecutiva en cualquier por vehı́culos especiales dependen del plan de producción
ciclo de producción t ∈ [1, T ] para todo plan de producción ε ∈ E. De este modo podemos decir que toda secuencia πε (T )
ε ∈ E no supere su ratio p/q. Las restricciones (8), (9), y tiene un componente común (los vehı́culos regulares) y un
(10) definen respectivamente las variables binarias xi,t , xi,t,ε , componente exclusivo (sus vehı́culos especiales).

615
XVIII Conferencia de la Asociación Española para la Inteligencia Artificial

B. VNS
   

 π1 (T )  
 (π1,1 , ..., πt,1 , ..., πT,1 )   Nuestra implementación de Variable Neighborhood Search
π2 (T )  (π1,2 , ..., πt,2 , ..., πT,2 )  (VNS) [24] construye su solución inicial siguiendo una es-

    

 
 
 

... ... trategia voraz basada en la heurı́stica de Gottlieb et al. [12].
   
πε (T ) = =

 πε (T )  
 (π1,ε , ..., πt,ε , ..., πT,ε )   A diferencia del diseño usado por GRASP, en este caso el
... ... proceso es determinista y siempre se elige el vehı́culo que

 
 
 


 
 
 

π|E| (T ) (π1,|E| , ..., πt,|E| , ..., πT,|E| ) incluya el menor número de violaciones posible con el mejor
   
(12) valor de la heurı́stica.
Con respecto al diseño de la fase de perturbación de la
xi,t = 1 ⇒ πt,ε = i, ∀i ∈ IX , ∀t ∈ [1, T ], ∀ε ∈ E (13) solución, usamos un operador distinto al que después se utiliza
para la fase de refinado. En concreto elegimos utilizar un
operador de inserción, que se aplica k veces durante la fase
de perturbación donde k es igual a la iteración actual del
x′i,t = 1 ⇒ πt,ε = i, ∀i ∈ IX′ , ∀t ∈ [1, T ], ∀ε ∈ E (14)
algoritmo. Por ejemplo, con k = 3 aplicamos tres veces el
Siguiendo esta formulación definimos la función objetivo operador de manera secuencial. Este operador se describe en
para r-CSP. Esta función, que mostramos en la ecuación (15), detalle junto con el resto de operadores de búsqueda local en
minimiza el número de violaciones de restricciones para las la Sección IV-C.
opciones j ∈ J usando sus ratios de carga pj /qj para todos los
C. Búsqueda local
planes de producción ε ∈ E. Usando este enfoque tratamos
r-CSP como un problema de satisfacción de restricciones y Elegimos nuestros operadores para la búsqueda local
conectamos con la formulación original de Parello et al. [1]. basándonos en trabajo previo [12], [17] y el resultado de
nuestros experimentos. Estos operadores son: Swap, Inserción,
X X X y Inversión. Para mostrar como estos operadores modifican
min Z = zj,t,ε una secuencia dada usaremos como referencia la cadena π
j∈J t∈[qj ,T ] ε∈E descrita en la Ecuación 16. El operador de Swap intercambia
X X X dos posiciones aleatorias en una secuencia. En la Ecuación 17
⇔ max Z′ = (1 − zj,t,ε ) (15)
se puede ver el resultado de aplicar el operador de Swap a la
j∈J t∈[qj ,T ] ε∈E
cadena π, intercambiando los elementos de los ı́ndices 3 y 7.
IV. M ÉTODOS El operador de Inserción selecciona un ı́ndice aleatoriamente
Como ya hemos anticipado, existen distintos casos de éxito y lo mueve a otra posición aleatoria de la cadena, desplazando
de la aplicación de metaheurı́sticas al CSP tradicional [4], las posiciones intermedias de manera que mantengan su orden
[12], [13], [17], [21]. En muchas de estos casos se aplican en la secuencia. En la Ecuación 18 el operador de Inserción
metaheurı́sticas constructivas [22], por lo que proponemos mueve el elemento en la posición 5 a la posición 9. El operador
resolver r-CSP también con estos métodos. En concreto, hemos de Inversión invierte una subcadena definida por dos ı́ndices
elegido GRASP y VNS. seleccionados aleatoriamente. En la Ecuación 19 se muestra
cómo el operador de Inversión invierte una subcadena de π
A. GRASP entre las posiciones 4 y 6.
Nuestro diseño de Greedy Randomized Adaptive Search
Procedure (GRASP) [23] está basado en la heurı́stica propues- π = 5, 3, 4, 2, 3, 4, 1, 5, 2, 0 (16)
ta por Gottlieb et al. [12]. De este modo, la lista de candidatos
para la fase constructiva se compone en tres etapas. En el
πSwap = 5, 3, 1, 2, 3, 4, 4, 5, 2, 0 (17)
primer paso, se descartan los vehı́culos que vioları́an alguna
restricción de carga p/q, salvo que no existan vehı́culos que
no violen alguna restricción, que en ese caso deberán incluir el πInsert = 5, 3, 4, 2, 4, 1, 5, 2, 3, 0 (18)
mı́nimo de nuevas violaciones posible. En el segundo paso, si
existe más de un elemento en la lista (muy posible sobretodo
πInvert = 5, 3, 4, 4, 3, 2, 1, 5, 2, 0 (19)
en los primeros pasos), esos elementos se ordenan según su
valor heurı́stico usando la heurı́stica de Gottlieb et al. [12]. De Independientemente del operador, nuestra búsqueda local
este modo se favorece incluir primero los vehı́culos que inclu- siempre se mueve al primer vecino que mejore la solución
yen opciones más restrictivas. Finalmente la lista de candidatos (primer-mejor). De este modo, en cada paso de la búsqueda
se trunca dependiendo del parámetro α ∈ (0, 1], dejando en local se genera y evalúa un vecino aleatorio de la solución
la lista los elementos con mejor valor heurı́stico. La selección actual, aceptándolo si mejora a la anterior y deshaciendo el
final en este paso de la fase constructiva será un elemento cambio si no. Nuestra búsqueda local aplica dos operadores
aleatorio de la lista de candidatos resultante. Exponemos la de manera secuencial: primero explora el espacio de búsqueda
fase de refinado posterior usando búsqueda local en la Sección usando Swap hasta que la búsqueda termina; después se repite
IV-C. el proceso utilizando el operador de Inversión.

616
XIII Congreso Español en Metaheurı́sticas y Algoritmos Evolutivos y Bioinspirados

V. E XPERIMENTACI ÓN minar a esta función objetivo regular(πε ). Calcular el fitness


para |E| > 1 implica generar y calcular cada combinación de
A. Configuración
planes de producción y vehı́culos no regulares contando las
Comparamos el rendimiento de las metaheurı́sticas seleccio- nuevas violaciones (∀ε ∈ E). Dado que generar cada posible
nadas usando las instancias publicadas en CSPLib [16], que combinación para todas las secuencias implicarı́a tiempos de
es el benchmark generalmente utilizado por la comunidad del ejecución muy costosos, en su lugar optamos por una solución
CSP [12], [13], [14]. Este benchmark contiene instancias con intermedia: simular este valor siguiendo un enfoque similar a
diferentes grados de complejidad que se podrı́an dividir en las simheurı́sticas [25]. De este modo aproximamos el valor
tres categorı́as: las factibles, las clásicas y las avanzadas. Las generando aleatoriamente |M | secuencias posibles para cada
instancias factibles son un conjunto de 70 instancias de 200 plan de producción partiendo de la secuencia encontrada usan-
vehı́culos con 5 opciones y entre 17 y 30 clases. Podemos do el plan de referencia πε y calculamos la media del mı́nimo
argumentar que estas instancias son las más básicas dado de violaciones para cada plan ε ∈ E. La función f leets(πε ),
que están diseñadas para ser factibles. Estas instancias están definida en la Ecuación 20, es por tanto una aproximación para
divididas en grupos de 10 según el porcentaje de requerimiento calcular la función objetivo de r-CSP (definida en la Ecuación
de sus opciones. Las instancias menos exigentes de esta 15 de la Sección III). Nuestra función de fitness final para
categorı́a tienen un 60 % y los distintos grupos de instancias resolver r-CSP combina el número de violaciones sobre el
aumentan su complejidad gradualmente hasta un 90 %. Las plan de referencia con la aproximación de las violaciones de
instancias clásicas [16] son un grupo de 9 instancias con 100 las flotas de vehı́culos especiales usando el parámetro θ. Este
vehı́culos con 5 opciones y entre 18 y 24 clases. Este grupo de parámetro θ se incluye para potenciar la relevancia del plan
instancias es más complejo porque sólo 4 de ellas son factibles, de referencia con respecto al resto de planes de producción.
dado que su porcentaje de requerimiento de sus opciones Ajustamos los parámetros θ y |M | durante la experimentación
está cercano al 100 %. Finalmente las instancias avanzadas, y finalmente se fijan a θ = 0,6 y |M | = 30. En la Ecuación 21
propuestas por [8], son 30 secuencias de 200, 300, y 400 mostramos la función objetivo final que utilizamos en nuestros
vehı́culos. Estas instancias tienen configuraciones de opciones experimentos (f itness(πε )).
y clases similares a las instancias clásicas. Igual que en el
caso de las instancias clásicas, las instancias avanzadas están min
P P P
zj,t,ε
j∈J t∈[qj ,T ] ε∈E
diseñadas para tener un porcentaje de requerimiento muy alto f leets(πε ) = ,
y para la mayorı́a de ellas no se conoce una solución factible |M | (20)
[15]. ∀m ∈ M
Como estas instancias no consideran demanda parcial in-
cierta, extendemos su semántica generando apéndices que f itness(πε ) =
incluyan flotas de vehı́culos especiales para las instancias ya
existentes. De esta manera maximizamos la compatibilidad θ ∗ regular(πε ) + (1 − θ) ∗ f leets(πε ) (21)
con los trabajos anteriores. El enfoque que seguimos es el Tanto GRASP como VNS ejecutan durante su búsqueda
siguiente: para cada instancia existente, consideramos como local un máximo de 10,000 pasos, y contemplan 400 iteracio-
no regulares el 20 % de sus clases de vehı́culos. La suma de la nes respectivamente. De este modo, nuestra experimentación
demanda original de los vehı́culos que pasan a tratarse como fija un criterio de parada de 4,000,000 evaluaciones para las
no regulares será la demanda de vehı́culos especiales en el metaheurı́sticas, que se ejecutan 30 veces utilizando diferentes
plan de producción de referencia. En concreto, las clases de semillas. Además, fijamos el parámetro α = 0, 15 para las
vehı́culos no regulares serán las últimas clases definidas en ejecuciones de GRASP. En cuanto a la implementación, hemos
la instancia original. Por ejemplo, tomando secuencia original implementado cada metaheurı́stica en Java y hemos empleado
con 10 clases, las clases de vehı́culos 1 a 8 seguirán siendo JAMES [26] para la búsqueda local.
vehı́culos regulares y las clases 9 y 10 serán consideradas no
regulares. De este modo, la demanda de vehı́culos que con- B. Comparación algorı́tmica para el r-CSP
sideran flotas de vehı́culos especiales depende de la demanda En esta sección discutimos el rendimiento de las me-
para las clases 9 y 10. Para terminar, se generan aleatoriamente taheurı́sticas sobre las instancias modificadas para incluir flotas
10 planes de producción utilizando una distribución uniforme. de vehı́culos especiales. Por razones de espacio los resultados
Continuando el ejemplo anterior, si la demanda original de sobre estas instancias se muestran divididos en las Tablas I
las clases 9 y 10 era de 20 vehı́culos cada una, la suma de (instancias básicas desde 60-01 hasta 85-10) y II (instancias
ambas será la demanda del plan de referencia y se generan 10 básicas entre 90-01 y 90-10, instancias clásicas p*, e instancias
combinaciones aleatorias de 40 vehı́culos en total. avanzadas pb 200-*, pb 300-*, y pb 400-*).
En cuanto a los cálculos de fitness, en el caso del CSP En la Tabla I vemos que prácticamente todos los valores
tradicional los valores de fitness representan el número de resaltados son de GRASP, tanto en mı́nimo valor como en
violaciones de restricciones p/q en una secuencia. Este es un valor promedio de f itness. La superioridad de GRASP en
caso especial de la función objetivo definida en la Ecuación 15 estas instancias podrı́a deberse a la baja carga de sus opciones.
con un único plan de producción (i.e. |E| = 1). Podemos deno- Además con la configuración de parámetros elegida puede que

617
XVIII Conferencia de la Asociación Española para la Inteligencia Artificial

Tabla I
VALORES M ÍNIMOS Y PROMEDIO DE LAS 30 EJECUCIONES DE CADA
METAHEUR ÍSTICA APLICADA A LAS INSTANCIAS ENTRE 60-01 Y 85-10.

GRASP VNS
Instancias
Min Med Min Med Tabla II
60-01 3.08 3.63 4.64 5.97 VALORES M ÍNIMOS Y PROMEDIO DE LAS 30 EJECUCIONES DE CADA
60-02 59.48 60.50 62.92 63.73 METAHEUR ÍSTICA APLICADA A LAS INSTANCIAS 90-*, CL ÁSICAS , 200-*,
60-03 4.32 4.66 6.00 6.82 300-*, Y 400-*.
60-04 30.56 31.23 31.28 32.87
60-05 1.48 2.40 3.44 4.62 GRASP VNS
Instancias
60-06 2.24 3.01 2.68 3.56 Min Med Min Med
60-07 1.72 2.18 2.92 3.74 90-01 12.76 14.27 13.60 14.35
60-08 3.52 4.22 6.56 7.71 90-02 26.28 27.37 26.44 30.13
60-09 2.96 3.44 3.88 5.03 90-03 18.52 21.91 21.36 23.05
60-10 2.92 3.71 9.24 10.81 90-04 13.40 14.35 14.28 15.35
65-01 6.28 7.04 7.24 7.82 90-05 42.40 44.85 40.52 42.15
65-02 59.96 60.72 62.68 62.68 90-06 61.80 63.43 66.56 69.52
65-03 5.60 6.24 9.68 11.02 90-07 26.48 28.57 25.92 27.22
65-04 26.60 27.57 27.32 29.10 90-08 65.60 67.01 67.20 68.80
65-05 4.96 5.53 5.52 7.42 90-09 44.20 45.46 45.48 46.80
65-06 5.20 5.99 8.76 10.13 90-10 38.04 38.97 39.08 40.22
65-07 5.08 5.68 7.60 9.05 p10 93 15.88 17.53 10.72 11.87
65-08 5.24 5.99 8.04 9.07 p16 81 10.28 11.07 5.52 6.65
65-09 2.32 2.75 3.60 4.59 p19 71 9.52 10.94 7.08 7.59
65-10 4.00 4.99 7.16 9.43 p21 90 4.28 5.75 3.20 3.88
70-01 7.24 8.56 11.20 11.91 p26 82 12.80 13.53 10.16 10.98
70-02 58.56 60.03 61.04 62.07 p36 92 12.68 13.36 10.32 10.93
70-03 10.88 11.53 12.76 13.60 p41 66 6.40 7.29 6.08 7.03
70-04 10.48 11.33 11.04 11.94 p4 72 10.08 11.17 6.20 7.35
70-05 12.28 12.81 14.88 15.96 p6 76 7.28 7.83 7.16 7.58
70-06 3.28 3.94 6.56 7.38 pb 200 01 53.40 54.83 46.76 48.84
70-07 8.92 9.86 12.12 13.88 pb 200 02 20.68 22.87 14.68 15.73
70-08 8.32 8.99 9.44 10.46 pb 200 03 43.32 46.02 38.40 39.86
70-09 6.48 7.52 7.36 10.01 pb 200 04 25.64 27.65 19.72 21.25
70-10 7.84 8.82 11.16 13.88 pb 200 05 23.44 24.75 20.92 22.07
75-01 10.80 11.28 11.84 13.22 pb 200 06 24.52 25.70 20.96 22.09
75-02 106.32 108.29 109.92 113.16 pb 200 07 13.76 15.57 7.84 8.23
75-03 15.88 16.42 17.40 18.74 pb 200 08 30.28 32.29 27.24 29.33
75-04 17.64 19.02 18.60 20.34 pb 200 09 20.44 22.35 17.72 18.32
75-05 8.92 9.83 10.80 11.92 pb 200 10 34.76 37.17 34.32 35.44
75-06 9.52 10.08 12.40 13.84 pb 300 01 71.36 73.56 57.88 60.97
75-07 14.04 14.86 14.96 16.77 pb 300 02 44.16 47.69 30.00 32.87
75-08 17.96 19.12 20.52 21.65 pb 300 03 49.76 52.42 52.76 54.17
75-09 6.64 7.95 9.12 10.52 pb 300 04 55.08 57.41 44.52 47.26
75-10 11.72 12.97 16.52 18.39 pb 300 05 71.52 74.93 70.40 74.24
80-01 6.40 7.11 7.80 8.41 pb 300 06 44.16 47.46 41.12 44.09
80-02 110.92 112.89 113.12 115.61 pb 300 07 62.00 64.68 45.52 51.22
80-03 13.24 13.82 15.64 16.67 pb 300 08 38.40 41.16 27.28 29.87
80-04 34.72 35.68 34.88 36.65 pb 300 09 46.56 48.17 41.60 43.82
80-05 19.16 20.09 23.28 24.79 pb 300 10 113.16 116.20 106.48 110.25
80-06 9.44 10.40 12.76 14.29 pb 400 01 84.84 89.38 79.12 82.13
80-07 15.40 16.36 19.20 20.86 pb 400 02 70.64 74.18 65.20 67.85
80-08 13.60 14.68 14.48 15.82 pb 400 03 56.12 57.66 47.12 49.85
80-09 86.40 87.62 89.40 92.24 pb 400 04 106.04 108.47 95.44 97.38
80-10 12.28 13.79 15.64 16.53 pb 400 05 61.36 65.55 47.76 52.32
85-01 6.20 7.02 7.76 8.63 pb 400 06 87.16 89.49 72.32 75.24
85-02 29.76 30.53 32.56 34.16 pb 400 07 83.72 88.40 73.84 78.20
85-03 36.76 37.64 38.40 41.20 pb 400 08 45.80 48.24 40.60 43.71
85-04 23.48 24.02 26.12 27.24 pb 400 09 145.52 150.82 131.64 137.13
85-05 50.20 51.20 52.08 53.26 pb 400 10 126.72 132.31 120.28 124.20
85-06 61.84 62.65 61.16 62.94
85-07 11.60 12.15 13.80 14.51
85-08 19.72 20.56 21.00 22.00
85-09 55.04 56.34 55.00 56.93
85-10 22.20 23.73 25.72 27.85

618
XIII Congreso Español en Metaheurı́sticas y Algoritmos Evolutivos y Bioinspirados

GRASP tenga algo más de diversidad que VNS, al cual la [6] M. Bergen, P. Van Beek, and T. Carchrae, “Constraint-based vehicle
heurı́stica voraz de su fase constructiva puede estar guiando a assembly line sequencing,” Advances in Artificial Intelligence, pp. 88–
99, 2001.
un óptimo local donde el plan de referencia es factible. Esta [7] M. Siala, E. Hebrard, and M.-J. Huguet, “A study of constraint
explicación es consistente con los resultados de la Tabla II, programming heuristics for the car-sequencing problem,” Engineering
donde GRASP reduce mucho su rendimiento en favor de VNS. Applications of Artificial Intelligence, vol. 38, pp. 34–44, 2015.
[8] M. Gravel, C. Gagne, and W. L. Price, “Review and comparison of three
En este caso VNS consigue prácticamente la mayorı́a de los methods for the solution of the car sequencing problem,” Journal of the
mejores resultados desde p10 93 en adelante. Dado que estas Operational Research Society, vol. 56, no. 11, pp. 1287–1295, 2005.
instancias tienen un requerimiento de sus opciones mayor, se [9] M. Fliedner and N. Boysen, “Solving the car sequencing problem via
branch & bound,” European Journal of Operational Research, vol. 191,
incrementa la importancia de encontrar una secuencia factible no. 3, pp. 1023–1042, 2008.
para el plan de referencia. Además GRASP sólo consigue uno [10] J. Bautista, J. Pereira, and B. Adenso-Dı́az, “A beam search approach
de los mejores resultados en instancias que tengan más de for the optimization version of the car sequencing problem,” Annals of
Operations Research, vol. 159, no. 1, pp. 233–244, 2008.
200 vehı́culos, lo que podrı́a indicar que la escalabilidad del [11] U. Golle, F. Rothlauf, and N. Boysen, “Iterative beam search for car
problema afecta a su rendimiento. sequencing,” Annals of Operations Research, vol. 226, no. 1, pp. 239–
254, 2015.
VI. C ONCLUSIONES [12] J. Gottlieb, M. Puchta, and C. Solnon, “A study of greedy, local search,
and ant colony optimization approaches for car sequencing problems,” in
En este artı́culo hemos propuesto cómo solucionar r-CSP Applications of evolutionary computing. Springer, 2003, pp. 246–257.
[13] S. Morin, C. Gagné, and M. Gravel, “Ant colony optimization with a
usando metaheurı́sticas constructivas, especı́ficamente GRASP specialized pheromone trail for the car-sequencing problem,” European
y VNS. Para ello hemos presentado nuestra propuesta para Journal of Operational Research, vol. 197, no. 3, pp. 1185–1191, 2009.
generar instancias de r-CSP a partir de las instancias de CSP [14] A. Zinflou, C. Gagné, and M. Gravel, “Crossover operators for the car
sequencing problem,” in Evolutionary Computation in Combinatorial
tradicionales, que hemos tomado del benchmark de referencia Optimization. Springer, 2007, pp. 229–239.
CSPLib. Los resultados al aplicar las metaheurı́sticas usando [15] ——, “Genetic algorithm with hybrid integer linear programming cros-
las instancias extendidas para r-CSP muestran que GRASP es sover operators for the car-sequencing problem,” INFOR: Information
Systems and Operational Research, vol. 48, no. 1, pp. 23–37, 2010.
más competitivo en las instancias para las cuales es más senci- [16] I. P. Gent and T. Walsh, “CSPLib: a benchmark library for constraints,”
llo encontrar una secuencia factible para el plan de referencia. in Principles and Practice of Constraint Programming–CP’99. Sprin-
En cambio pierde efectividad gradualmente al incrementar la ger, 1999, pp. 480–481.
[17] M. Puchta and J. Gottlieb, “Solving car sequencing problems by local
dificultad de las instancias y finalmente es sobrepasado por optimization,” in Applications of Evolutionary Computing. Springer,
VNS. 2002, pp. 132–142.
Nuestro trabajo futuro se centrará en incluir nuevas me- [18] B. Estellon, F. Gardi, and K. Nouioua, “Two local search approaches
for solving real-life car sequencing problems,” European Journal of
taheurı́sticas constructivas como Ant Colony Optimization Operational Research, vol. 191, no. 3, pp. 928–944, 2008.
[27], que podrı́an además combinarse con nuestros procedi- [19] C. Solnon, “Combining two pheromone structures for solving the car
mientos de búsqueda local ya presentados. Futuras extensio- sequencing problem with Ant Colony Optimization,” European Journal
of Operational Research, vol. 191, no. 3, pp. 1043–1055, 2008.
nes de nuestro trabajo también considerarán la definición de [20] C. Solnon, V. D. Cung, A. Nguyen, and C. Artigues, “The car sequencing
métricas de robustez más avanzadas que evalúen la calidad problem: Overview of state-of-the-art methods and industrial case-
de las soluciones más allá de la violación de restricciones del study of the ROADEF’2005 challenge problem,” European Journal of
Operational Research, vol. 191, no. 3, pp. 912–927, 2008.
CSP tradicional. [21] M. Prandtstetter and G. R. Raidl, “An integer linear programming ap-
proach and a hybrid variable neighborhood search for the car sequencing
AGRADECIMIENTOS problem,” European Journal of Operational Research, vol. 191, no. 3,
pp. 1004–1022, 2008.
Este trabajo está financiado por el Ministerio de Economı́a y [22] E.-G. Talbi, Metaheuristics: from design to implementation. John Wiley
Competitividad bajo los proyectos NEWSOCO (ref. TIN2015- & Sons, 2009.
[23] T. A. Feo and M. G. Resende, “Greedy randomized adaptive search
67661-P) y FHI-SELM2 (ref. TIN2014-57497-P), incluyendo procedures,” Journal of global optimization, vol. 6, no. 2, pp. 109–133,
Fondos Europeos de Desarrollo Regional (ERDF). 1995.
[24] N. Mladenović and P. Hansen, “Variable neighborhood search,” Compu-
R EFERENCIAS ters & Operations Research, vol. 24, no. 11, pp. 1097–1100, 1997.
[25] A. A. Juan, J. Faulin, S. E. Grasman, M. Rabe, and G. Figueira,
[1] B. D. Parrello, W. C. Kabat, and L. Wos, “Job-shop scheduling using “A review of simheuristics: Extending metaheuristics to deal with
automated reasoning: A case study of the car-sequencing problem,” stochastic combinatorial optimization problems,” Operations Research
Journal of Automated reasoning, vol. 2, no. 1, pp. 1–42, 1986. Perspectives, vol. 2, pp. 62–72, 2015.
[2] J. Bautista Valhondo, “Modelos y métricas para la versión robusta del [26] H. De Beukelaer, G. F. Davenport, G. De Meyer, and V. Fack, “JAMES:
car sequencing problem con flotas de vehı́culos especiales,” Dirección An object-oriented Java framework for discrete optimization using local
y organización, vol. 60, no. 2016, pp. 57–65, 2016. search metaheuristics,” Software: Practice and Experience, vol. 47,
[3] J. Bautista, J. Pereira, and B. Adenso-Dı́az, “A GRASP approach for no. 6, pp. 921–938, 2017.
the extended car sequencing problem,” Journal of Scheduling, vol. 11, [27] M. Dorigo and T. Stützle, “Ant colony optimization: overview and recent
no. 1, pp. 3–16, 2008. advances,” Handbook of metaheuristics, 2010.
[4] C. C. Ribeiro, D. Aloise, T. F. Noronha, C. Rocha, and S. Urrutia,
“An efficient implementation of a VNS/ILS heuristic for a real-life car
sequencing problem,” European Journal of Operational Research, vol.
191, no. 3, pp. 596–611, 2008.
[5] U. Golle, “Fitness landscape analysis and design of metaheuristics for
car sequencing,” On the Car Sequencing Problem: Analysis and Solution
Methods, p. 100, 2011.

619
XVIII Conferencia de la Asociación Española para la Inteligencia Artificial

Secuenciación en líneas de fabricación no


sincronizadas con ensamblajes
Modelado matemático y resolución heurística

Carlos Andrés Julien Maheut


Departamento de Organización de Empresas Departamento de Organización de Empresas
Universitat Politècnica de València Universitat Politècnica de València
Valencia Valencia
candres@omp.upv.es Juma2@upvnet.upv.es

Abstract—En este trabajo se presenta el problema de producidas por otras máquinas. De esta manera, no es posible
establecer la secuencia en una línea de montaje no sincronizada en empezar una operación de un trabajo en una máquina, si no han
donde cada estación de trabajo se abastece por otra máquina. llegado a la misma todos los componentes necesarios para
Entre cada estación de trabajo o máquina existen almacenes de ejecutarla. Este tipo de configuraciones posibilita el estudio de
capacidad limitada que pueden provocar bloqueos en las muchas más variantes de sistemas productivos industriales que
instalaciones precedentes si llegan a saturar su capacidad. Se los que se estudian con el taller de flujo puesto que incide en el
modela el problema como un taller de flujo con ensamblajes y problema de la coordinación a nivel de programa de producción
almacenes intermedios con el objetivo de minimizar Cmax y se de la fabricación de los componentes necesarios para obtener un
realiza un estudio sobre el rendimiento de diferentes heurísticas,
producto concreto.
presentándose una adaptación de la metaheurística VNS al
problema. En la mayoría de la investigación realizada sobre estas
configuraciones se asume que existe una capacidad de
Keywords—líneas de fabricación; taller de flujo; almacén almacenamiento infinito entre las máquinas del taller. Sin
limitado; heurística; Variable Neighbourghood Search embargo, en los sistemas productivos reales siempre hay una
limitación de capacidad debido a la necesidad física que los
I. INTRODUCCIÓN trabajos esperen antes de ser procesados en una máquina si ésta
Desde el trabajo seminal de [1] se ha desarrollado una se encuentra ocupada procesando el trabajo previo de la
vastísima literatura relativa a la Programación de Producción en secuencia. Esta limitación es más relevante cuanto mayor es el
sistemas de fabricación y, en concreto, al estudio de modelos y volumen o tamaño de las piezas o lotes procesados entre las
algoritmos para resolver el problema de la secuencia en máquinas. En general, la limitación que se considera en la
diferentes configuraciones. Una de las configuraciones más literatura de secuenciación se establece en base al número
estudiadas es el taller de flujo o “flowshop” en el que todos los máximo de trabajos que pueden almacenarse en cada instante
trabajos tienen la misma ruta de operaciones en las M máquinas entre dos máquinas (asumiendo de esta manera que todos los
donde se procesan y el objetivo es determinar el orden de paso trabajos tienen un volumen parecido o se transportan en
de un conjunto de N trabajos por las máquinas que optimice contenedores estandarizados). Según se recoge en [7] existe un
cierta medida de eficiencia de la secuencia [2]. número creciente de trabajos en los que ya se considera
explícitamente la limitación de capacidad entre etapas del
Dentro del conjunto de soluciones posibles a cualquier proceso de fabricación.
instancia de este tipo de problema, muchos trabajos se han
centrado en el subconjunto formado por aquellas con la Un prometedor campo de investigación es el de la
propiedad denominada “de permutación”, esto es, su secuencia programación de unidades en líneas mixtas de fabricación y/o
de paso es idéntica en todas las máquinas [3], [4]. Esto es debido montaje no sincronizadas con limitación de capacidad. En esta
a que la solución óptima para ciertos casos de optimización es configuración, un trabajo solamente puede ser liberado de una
una secuencia de permutación y que, en muchos problemas estación de la línea a la siguiente estación si existe capacidad de
reales, la disciplina FIFO es la que se aplica con más frecuencia almacenamiento suficiente entre ambas estaciones. Este tipo de
en el transporte de los trabajos entre las máquinas debido a las sistemas productivos, se pueden modelar como talleres de flujo
políticas de transporte de los trabajos entre las máquinas. con almacenes intermedios según se ha propuesto por [8].

Más recientemente, otro tipo de configuración denominada El objetivo de este trabajo es profundizar en este tipo de
taller con ensamblajes “assembly shop” [5], [6], ha empezado a configuraciones en las que, además de una línea de fabricación
llamar la atención de los investigadores. En este tipo de y/o montaje principal, existen una serie de líneas o estaciones de
problemas se considera que existe al menos una máquina o etapa abastecimiento conectadas. Un ejemplo real de este tipo de
que funciona como ensambladora de las partes y componentes sistemas productivos se muestra en la Fig. 1.

620
XIII Congreso Español en Metaheurı́sticas y Algoritmos Evolutivos y Bioinspirados

Fig. 1. Ejemplo de sistema productivo real con ensamblajes

p es el subíndice asociado a la posición ocupada por cada


trabajo (p=1,..,N)
II. PLANTEAMIENTO Y MODELADO DEL PROBLEMA j es el subíndice asociado a las estaciones de trabajo de la
línea principal (j=1,..,M)
A. Descripción del problema
Mj identifica cada estación de trabajo de la línea principal
La configuración objeto de estudio está formada por una
(j=1,..,M). Además, se consideran M máquinas de
línea principal compuesta por M máquinas o estaciones. A cada
abastecimiento que suministran MxN componentes en total
una de estas máquinas le llegan componentes procedentes de una
debido a que solo hay una máquina abasteciendo a cada estación
máquina de fabricación de componentes. Existen almacenes
de trabajo. Cada una de estas máquinas se denotarán por MCj
intermedios entre cada máquina o estación, tanto de la línea
j=1,…,M
principal las máquinas de fabricación de componentes. Para
poder llevar a cabo la operación correspondiente en cada pci,j es el tiempo de proceso del componente necesario para
estación de la línea principal es necesario disponer el producto el producto i en la máquina de abastecimiento MCj.
suministrado por la estación anterior y el componente
suministrado por la máquina de fabricación. En este trabajo se pi es el tiempo de proceso del producto i en cada estación Mj
va a suponer solamente secuencias basadas en permutaciones, de la línea principal.
esto es, la secuencia es la misma en todas las estaciones de la Entre cada par de estaciones de trabajo j-1 y j de la línea
línea principal y en cada máquina de fabricación de principal existe un almacén intermedio Bj. Del mismo modo,
componentes. entre una estación de trabajo Mj y una máquina de
abastecimiento de componentes MCj existe un almacén
B. Notación matemática intermedio BCj.
Para identificar los diferentes elementos del problema se De esta forma se considera que bcj es la capacidad de
usará la siguiente notación basada en la configuración mostrada almacenamiento (en unidades) del almacén que existe entre la
en la Fig.2: máquina de abastecimiento MCj y la estación de ensamblaje Mj
N trabajos o componentes. y que bj es la capacidad de almacenamiento (en unidades) del
almacén que existe entre las estaciones de ensamblaje Mj-1 y
M estaciones en la línea principal. Mj.
i es el subíndice asociado a los trabajos o componentes SCp,j ≥ 0 es la fecha de inicio del componente que ocupa la
(i=1,..,N) posición p de la secuencia en cada máquina j de abastecimiento.

621
XVIII Conferencia de la Asociación Española para la Inteligencia Artificial

MC1 MC2 MCM-1 MCM

BC1 BC2 BCM-1 BCM

M1 B2 M2 … BM-1 MM-1 BM MM
Fig. 2. Configuración estudiada

Sp,j ≥ 0es la fecha de inicio del producto que ocupa la ��,1 ≥ ��−�2 −1,2 � > ��+1 + 1 (12)
posición p de la secuencia en cada estación j de la línea principal.

xi,p es una variable binaria que vale 1 si el producto i ocupa � = 2, … , �;
la posición p de la secuencia y 0 en caso contrario. ��,� ≥ ��−1,� + � ��,�−1 ∙ ��,� (13)
�=1
� = 2, … , � − 1

C. Modelo matemático � = 2, … , �;
El modelo matemático de la configuración estudiada se basa ��,� ≥ ��,�−1 + � ��,� ∙ ��,�−1 (14)
en las definiciones anteriores y es el siguiente: �=1
� = 2, … , � − 1

Min Cmax (1) � = 2, … , �;
��,� ≥ ���,� + � ��,� ∙ ���,� (15)
� = 2, … , � − 1
s.a. �=1

� �≥�
� ��,� = 1 � = 1, … , � (2) ��,� ≥ ��−��+1−1,�+1 ≥ 2 + ��+1 + 1; (16)
�=1
� � = 2, … , � − 1
� ��,� = 1 �
� = 1, … , � (3)
�=1 ��,� ≥ ��−1,� + � ��,�−1 ∙ ��,� � = 2, … , � (17)
�=1
��1,� = 0 � = 1, … , � (4) �

�1,1 ≥ ��1,1 + ∑�
�=1 ��,1 ∙ ���,1 (5) ��,� ≥ ��,�−1 + � ��,� ∙ ��,�−1 � = 2, … , � (18)
�=1

(6) �
�1,� ≥ ��1,� + � ��,1 ∙ ���,� � = 2, … , � ��,� ≥ ���,� + � ��,� ∙ ���,� � = 2, … , � (19)
�=1
�=1

(7) �
�1,� ≥ �1,�−1 + � ��,1 ∙ ��,�−1 � = 2, … , � ���� = ��,� + � ��,� ∙ ��,� (20)
�=1
�=1

� = 2, … , �; La expresión (1) corresponde a la función objetivo a
���,� ≥ ���−1,� + � ��,�−1 ∙ ���,� (8) optimizar que en este trabajo es la fecha de fin del último trabajo
� = 1, … , �
�=1 secuenciado o makespan. (2) y (3) son restricciones de
� > ��� + 1; asignación biunívoca que obligan a que en cada posición de la
���,� ≥ ��−��� −1,� (9) secuencia haya solo un trabajo y que cada trabajo se asigne
� = 1, … , � solamente a una posición. La restricción (4) define que el
� instante de inicio en las máquinas de abastecimiento del primer
componente es cero. (5) indica que el producto en primera
��,1 ≥ ��−1,1 + � ��,�−1 ∙ ��,1 � = 2, … , � (10) posición empieza en la primera estación de la línea cuando acaba
�=1 la fabricación del componente en la primera máquina de
� abastecimiento.
��,1 ≥ ���,1 + � ��,� ∙ ���,1 � = 2, … , � (11) Las restricciones (6) y (7) afectan a la fecha de inicio del
�=1 producto que va en primera posición de la secuencia en todas las
estaciones de trabajo en función de la máquina que fabrica su

622
XIII Congreso Español en Metaheurı́sticas y Algoritmos Evolutivos y Bioinspirados

componente y de la estación anterior de la línea donde se 1) Heurística NEH


procesa. La primera regla que se ha elegido es la conocida como regla
Las ecuaciones (8) y (9) permiten calcular las fechas de NEH [9], puesto que ha dado muy buenos resultados en diversas
inicio en las máquinas de abastecimiento de los componentes variantes de flowshop [3]. Específicamente, en [10] se corrobora
necesarios para ensamblar el resto de productos de la secuencia. su bondad para configuraciones flowshop con capacidad de
En concreto, (8) se aplica a aquellos productos cuya posición en almacenamiento limitada.
la secuencia es tal que no se ven afectados por el tamaño de los En lo que se refiere a su funcionamiento, la regla NEH se
almacenes que hay entre las máquinas de abastecimiento y las basa en la ordenación de los trabajos en función de un criterio
máquinas de ensamblaje. En este caso, las fechas de inicio solo determinado (en el artículo original se usa la regla de mayor
se ven condicionadas por la fecha de fin del componente tiempo de proceso). En el presente trabajo, la regla de
perteneciente al producto de la posición previa de la secuencia, ordenación de los trabajos considera tanto los tiempos en las
ya que antes de las máquinas MCj no hay otra máquina. Sin estaciones de ensamblaje como los de las máquinas de
embargo, en (9) además de este hecho se debe tener en cuenta fabricación de componentes. Así se han tenido en cuenta los
que más allá de la posición bcj+1, los componentes solo pueden siguientes criterios de ordenación:
empezar cuando empiecen los que están bcj posiciones antes.
• MAX_T/MIN_T: Valor máximo (o mínimo) para cada
Las ecuaciones (10) y (11) son similares a las dos anteriores, trabajo entre todos los tiempos (tanto de la línea principal
pero en este caso, afectan a las fechas de inicio en la primera como las de las máquinas de fabricación de
máquina de la línea principal de los productos que están después componentes).
de la posición 1. En ellas se tiene en cuenta las fechas de inicio
de los trabajos que no se ven afectados por la capacidad del • SUM_T: Para cada trabajo, la suma de todos los tiempos
almacén que se encuentra entre las máquinas M1 y M2 de la (tanto de la línea principal como las de las máquinas de
línea principal (y solo dependen de la fecha de fin en la máquina fabricación de componentes).
de abastecimiento del componente necesario para montar el
trabajo, y la fecha de fin del trabajo anterior en la M1. • MAX_T_P/MIN_T_P: Valor máximo (o mínimo) para
cada trabajo entre todos los tiempos de la línea principal.
En (12) se tiene en cuenta un término adicional que depende
de la fecha en la que el trabajo que está en b2 posiciones antes, • SUM_T_P/SUM_T_C: Para cada trabajo, la suma de
abandona el almacén b2. todos los tiempos en las estaciones de ensamblaje de
fabricación de components (o en las máquinas de
Las expresiones (13) (14) (15) y (16) se aplican de la segunda fabricación de components).
máquina de la línea principal de ensamblaje en adelante. Es por
ello que incorporan términos adicionales en sus expresiones para • MAX_T_C/MIN_T_C: Valor máximo (o mínimo) para
identificar las relaciones de las fechas de inicio de los trabajos cada trabajo entre todos los tiempos de proceso en las
en la máquina, con las fechas de fin del trabajo en la máquina máquinas de fabricación de componentes.
anterior de la línea principal, las fechas de fin del componente
necesario en la máquina de abastecimiento correspondiente, la 2) Heurística PF
fecha de fin del trabajo anterior en la máquina, y en el caso de la En [11] se propuso la regla conocida como PF o Profile
expresión (16) las relaciones en el almacén de capacidad Fitting dentro de un caso de fabricación cíclica en un flowshop
limitada entre la máquina y la máquina siguiente. con almacenes (asimilable a una línea no sincronizada de
Dado que la última máquina M de la línea principal no tiene fabricación con mezcla de modelos). Al ser una regla que tiene
almacén posterior, son necesarias las expresiones (17) (18) y en cuenta los bloqueos y esperas de las máquinas se ha
(19) para calcular los tiempos de inicio en esa máquina. considerado en este trabajo puesto que se le supone un buen
Finalmente, (20) permite calcular la fecha de fin del último rendimiento en sistemas con ensamblajes donde hay muchas
trabajo de la secuencia. posiciones que originan esperas.
El procedimiento comienza eligiendo como primer trabajo
III. HEURÍSTICAS Y METAHEURÍSTICA PLANTEADAS de la secuencia aquel que tiene la mayor suma de tiempos de
proceso. En nuestro caso optaremos por elegir el mayor de las
Pese a la existencia del modelo matemático descrito en el
sumas de tiempos de proceso en todas las máquinas (tanto de
apartado anterior, en el apartado siguiente se muestra la
componentes como principales). Una vez elegido el primer
dificultad de abordar instancias de tamaño medio o grande. Por
trabajo i*, se calcula para el resto de trabajos candidatos ic el
ello, se han propuesto varias heurísticas y úna metaheurística
basada en Búsqueda por Entorno Variable (VNS) para resolver valor ∑� �=1 D[ic]j − D[i∗]j − p[ic]j , donde D[i]j=max(C[i]j, S[i-
el problema. A continuación, se hace una descripción de las b(j+1)]j+1). El sumatorio se extiende a todas las máquinas (tanto las

características principales de estos métodos. de la línea principal como las de abastecimiento) y se elige aquel
trabajo ic en el que se obtenga la suma menor. Este trabajo ahora
se convierte en i* y se repite el proceso hasta que se completa la
A. Heurísticas
secuencia.
Se han evaluado tres reglas heurísticas adaptadas al
problema que nos ocupa.

623
XVIII Conferencia de la Asociación Española para la Inteligencia Artificial

3) Heurística MM El criterio de parada se ha fijado en un número de iteraciones


La última regla que se usará en esta comparación es la determinado, aunque se ha monitorizado el tiempo de cálculo de
definida en [12] para configuraciones flowshop con bloqueo. En cara al estudio experimental que se detalla en el siguiente
primer lugar, se elige en primera posición de la secuencia aquel apartado.
trabajo que tenga menor tiempo de proceso en la primera
máquina de la línea principal. A continuación, se coloca en IV. ESTUDIO EXPERIMENTAL
última posición aquel trabajo que tenga el tiempo de proceso El estudio experimental se ha desarrollado sobre tres grupos
menor en la última máquina de la línea principal. A continuación de instancias: pequeñas, medianas y grandes. Todas ellas se han
del trabajo en primera posición (i*) se coloca un trabajo (ic) con generado a partir del conocido conjunto de instancias de [15]
el menor valor de la siguiente expresión: adaptándolas para el caso que nos ocupa.
� ∙ ∑�−1 �
�=1 ���� ,� − ��∗,�+1 � − (1 − �) ∙ ∑�=1 ��� ,� (21) Con las instancias pequeñas (9 trabajos y cinco estaciones de
Donde M son las máquinas de la línea principal. Una vez trabajo) se ha realizado una enumeración completa de todas las
colocado el trabajo elegido, este pasa ahora a ser i* y se repite el soluciones y se han representado en la Fig. 4 para poder tener
proceso hasta que no hay más trabajos por colocar. En este una visión del aspecto que puede tener el espacio de soluciones.
trabajo se han propuesto adicionalmente dos variantes, la
primera es usar, en vez de los valores de tiempos de proceso en
la línea principal, el mayor entre los tiempos de proceso del
trabajo i en la máquina que ensambla componentes para la N=9,M=5
máquina j y la máquina j de la línea principal. La segunda es
utilizar la suma de ambos tiempos de procesado en las dos b=0 b=1 b>1
máquinas (la de fabricación de componentes y la de la línea
principal). 40000

FRECUENCIA ACUMULADA
30000
B. Búsqueda por entorno variable (VNS)
20000
La metaheurística VNS o búsqueda por entorno variable fue
planteada por primera vez en [13] y se trata de un procedimiento 10000
de búsqueda local que usa sucesivamente diversos tipos de 0
movimiento (con sus entornos asociados Nk) para explorar 820 1020 1220
eficientemente el espacio de soluciones. La estrategia de CMAX
búsqueda se basa en realizar cambios sistemáticos de entorno
dentro de la búsqueda local y aumentar el tamaño del entorno
cuando la búsqueda no avanza mediante una gran perturbación Fig. 3. Estudio de enumeración completa
denominada “agitación”. Pueden plantearse diversos tipos de
movimientos de agitación del mismo modo que se manejan Se ha observado experimentalmente una clara diferencia
diferentes entornos para la búsqueda local [14]. cuando el tamaño de los almacenes es nulo respecto a lo que
Como elemento novedoso, en este trabajo planteamos una sucede para tamaños de almacenes mayores. Siendo inexistente
variante de VNS a la que se añade un mecanismo de reinicio la influencia que tiene el tamaño de los almacenes intermedios
basado en frecuencias. Inicialmente se parte de una solución para valores superiores a 1.
inicial obtenida mediante la regla NEH, sin embargo, en el En el caso de las instancias medianas (instancias de 20 y 50
momento en que se han realizado todos los movimientos según trabajos, y 5 y 10 estaciones de trabajo) se ha realizado un
las diferentes combinaciones de movimientos de agitación y estudio experimental para evaluar hasta qué tamaño es posible
búsqueda local, se reinicia una nueva solución mediante un resolver de manera óptima el problema. En la Tabla 1 se muestra
procedimiento constructivo. Este procedimiento genera una el resultado de resolver 80 instancias diferentes con tamaños de
secuencia basada en las posiciones relativas de los trabajos que almacén de 0 a 3.
se obtienen en aquellas soluciones que, en una iteración
determinan, han mejorado la mejor solución encontrada. Según la tabla, se puede concluir que el tamaño de los
almacenes influye sobre la posibilidad de resolver óptimamente
En este trabajo, y usando una representación del problema una instancia. Del mismo modo, el número de trabajos a
basada en una permutación de los trabajos, se han utilizado los secuenciar y el de máquinas también tienen influencia, siendo el
siguientes movimientos de agitación: realizar varias inserciones, primero más influyente que el segundo, puesto que, al aumentar
realizar varios swaps entre dos posiciones aleatoriamente el número de trabajo, provoca que, para un gran número de
elegidas, elegir varios trabajos en posiciones consecutivas y instancias, no se puedan ni siquiera calcular una relajación del
reescribirlos en orden inverso, y elegir varios trabajos en modelo que permita la aplicación de las técnicas de ramificación
posiciones no consecutivas y reescribirlos en orden inverso. implementadas en el optimizador
En cuanto a los movimientos de búsqueda local, se han
usado: inserción de un trabajo entre otros, intercambio de TABLA 1.
posiciones de dos trabajos consecutivos e intercambio de
posiciones de dos trabajos no consecutivos.

624
XIII Congreso Español en Metaheurı́sticas y Algoritmos Evolutivos y Bioinspirados

N M b % Resuelto %GAP 0,05< No almacén decrece conforme aumenta el tamaño de almacén,


óptimamente <0,05 %GAP solución siendo casi despreciable a partir de tamaños superiores a 4.
<0,3
20 5 0 0% 20% 80% 0%
1 20% 80% 0% 0% V. CONCLUSIONES
En este trabajo se ha abordado el estudio de una
2 100% 0% 0% 0% configuración tipo flowshop con máquinas auxiliares de
3 80% 20% 0% 0% abastecimiento que presenta limitación de capacidad entre las
10 0 0% 100% 0% 0% diferentes máquinas del sistema. Este tipo de configuraciones
1 0% 20% 80% 0% son de gran interés porque permite representar tanto líneas de
fabricación no sincronizadas como otros sistemas complejos en
2 0% 60% 40% 0%
los que existen máquinas destinadas a la fabricación de
3 0% 60% 40% 0% componentes. Se ha propuesto un modelo matemático que
50 5 0 0% 0% 40% 60% permite obtener soluciones óptimas para instancias de hasta 20
1 0% 0% 20 80% trabajos. Además, se ha observado que los tamaños de los
2 0% 20% 80% 0% almacenes intermedios influyen sobre el problema, tanto en la
3 20% 60% 0% 20% topología del espacio de soluciones como en la capacidad de
10 0 0% 0% 80% 10% alcanzar buenas soluciones (o incluso óptimas) en un tiempo
1 0% 0% 40% 60% limitado.
2 0% 0% 40% 60%
3 0% 0% 60% 40% REFERENCIAS
Finalmente, se ha usado un conjunto de instancias grandes
(200 y 500 trabajos, 5, 10 y 20 estaciones de trabajo y tamaños [1] S.M. Johnson, “Optimal Two- and Three-Stage Production Schedules
de almacén de 0 a 4) para evaluar el rendimiento de las with Setup Times Included”. Naval Research Logistics Quarterly, vol. 1,
heurísticas y la metaheurística VNS descrita. Se ha realizado un pp. 61– 68, 1954
estudio de ajuste de parámetros en aquellas heurísticas que lo [2] T. C. E. Cheng, J. Gupta y G. Wang, “A review of flowshop scheduling
requieren de cara a definir el mejor criterio de ordenación en el research with setup times”. Production and operations management, vol.
9, pp. 262-282, 2000.
caso de la regla NEH o el valor de α más adecuado en el caso
[3] R. Ruiz y C. Maroto, “A comprehensive review and evaluation of
de la regla MM. En la Fig. 4 se puede observar el gráfico de permutation flowshop heuristics”. European Journal of Operational
medias de las reglas (donde 1 es la regla MM, 2 la PF y 3 la Research, vol. 165, pp. 479-494, 2005
NEH) en el que se observa la clara superioridad de la regla NEH. [4] Q. Pan y R. Ruiz, “A comprehensive review and evaluation of
permutation flowshop heuristics to minimize flowtime”. Computers &
Operations Research, vol. 40, pp. 117-128, 2013.
[5] C. Y. Lee, T.C.E. Cheng y B.M.T. Lin, “Minimizing the makespan in the
Medias y 95,0% de Tukey HSD
3-machine assembly-type flowshop scheduling problem”. Management
0,2
Science, vol. 39, pp. 616-625, 1993
[6] C. N. Potts, S. V. Sevast'janov, V.A. Strusevich, L. N. Van Wassenhove,
0,16
y C. M. Zwaneveld, “The Two-Stage Assembly Scheduling Problem:
0,12
Complexity and Approximation”. Operations Research, vol 43, pp. 346-
355, 1995.
APD

0,08
[7] C. Andrés y J. Maheut, “Secuenciación con almacenes limitados. Una
0,04
revisión de la literatura”. Dirección y Organización, vol. 66, 2018.
[8] J. Bautista-Valhondo y R. Alfaro-Pozo, “Mixed integer linear
0
1 2 3
programming models for Flow Shop Scheduling with a demand plan of
Regla job types”. Central European Journal of Operations Research, 2018.
https://doi.org/10.1007/s10100-018-0553-8
[9] M. Nawaz, E. E. Enscore e I. Ham, “A heuristic algorithm for the m-
Fig. 4. Gráfico de medias machine, n-job flowshop problem”. Omega, vol. 11, pp.91-95, 1983.
[10] R. Leinsten, “Flowshop sequencing problems with limited buffer
En el caso de VNS, su comportamiento es superior a la regla storage”. Int. Journal of Prod. Research, vol. 28, pp. 2085-2100, 1990.
NEH, puesto que permite mejorar sus resultados en el 97,91% [11] S. T. McCormick, M. I. Pinedo, S. Shenker, y B. Wolf, “Sequencing in an
de las experiencias planteadas. En concreto, comparando las assembly line with blocking to minimize cycle time”. Operations
mismas instancias con diferentes tamaños de almacén, se ha Research, vol. 37, pp. 925-936, 1989.
observado que, el % en que VNS mejora a NEH aumenta según [12] D. Ronconi, “A note on constructive heuristics for the flowshop problem
aumenta el tamaño de almacén (de una mejora del 0,52% with blocking”. Int. J.ournal of Prod. Economics, vol. 87, pp. 39-48, 2004
respecto a la solución obtenida mediante NEH para los [13] N. Mladenović, P. Hansen, “Variable neighborhood search”. Computers
problemas con tamaño de almacén igual a cero hasta un 6,3% & Operations Research, vol. 24, pp. 1097-1100, 1997.
para problemas con tamaño de almacén igual a 4). Esto, indica [14] J. A. M. Pérez, N. Mladenović, B. M. Batista e I. J. G del Amo, “Variable
que VNS es más efectiva respecto a NEH cuanto mayor es la Neighbourhood Search”, in Metaheuristic Procedures for Training
Neutral Networks. Op. Res. /Comp. Sc. Interfaces Series, vol 36. E. Alba
capacidad de los almacenes intermedios. y R. Martí, Eds, Boston: Springer, 2006
Además, y basándonos ya en los resultados obtenidos por [15] E. Taillard, “Benchmarks for basic scheduling problems”. European
VNS, el estudio muestra que la influencia del tamaño del Journal of Operational Research, vol. 64, pp. 278-285, 1993.

625
XVIII Conferencia de la Asociación Española para la Inteligencia Artificial

Equilibrado robusto de una línea de motores mixtos


con atributos temporales, espaciales y ergonómicos
Joaquín Bautista 1, Manuel Chica 2, Oscar Cordón 2, Sergio Damas 2
1
IOC-ETSEIB-Nissan Chair, Universidad Politécnica de Catalunya, España
2
Instituto Andaluz Interuniversitario DaSCI (Data Science and Computational Intelligence), Universidad de Granada, España
Emails: joaquin.bautista@upc.edu, manuelchica@ugr.es, ocordon@decsai.ugr.es, sdamas@ugr.es

Resumen— Partiendo de los modelos TSALBP-ergo (Time operarios), un esfuerzo físico (según la categoría del riesgo
and Space Assembly Line Balancing Problem with Ergonomic ergonómico), y un espacio para el producto y sus componentes,
Risk), proponemos 9 métricas para medir la robustez de un la instrumentación y los recursos humanos. La definición de las
equilibrado de línea según sus atributos temporales, espaciales y tareas es el resultado de concebir la fabricación de un producto
contingentes. La versión robusta de TSALBP-ergo considera complejo como la superposición de las mismas, dando lugar a
diversos planes de demanda e incluye funciones que miden los un problema denominado equilibrado de líneas de montaje
excesos de cargas temporales, espaciales y de riesgo ergonómico (ALB: Assembly Line Balancing) [1], [2]. Las soluciones se
en las estaciones de la línea de montaje. Las métricas propuestas
basan en distribuir eficientemente las tareas entre estaciones,
son útiles como funciones objetivo en problemas de optimización
cumpliendo un conjunto de restricciones.
o se pueden emplear como indicadores del nivel de robustez de
una línea. La nueva versión r-TSALBP-ergo pone a disposición
El problema de equilibrado de líneas en su versión simple
del decisor nuevas soluciones de equilibrado más eficientes y denominado SALBP [3] (Simple Assembly Line Balancing
robustas ante una demanda incierta. Problem ), consiste en repartir óptimamente las tareas entre las
estaciones, respetando las restricciones de precedencia entre
Keywords—Líneas de ensamblado; Demanda incierta; Riesgo ellas, siguiendo dos criterios de optimización: (i) minimizar el
Ergonómico; Optimización robusta. número de estaciones de trabajo, dado un tiempo de ciclo de
fabricación (SALBP-1), y (ii) maximizar la tasa de producción
I. INTRODUCCIÓN de la línea, dado un número fijo de estaciones de trabajo
El diseño de una línea de montaje presenta tres vertientes (SALBP-2).
como mínimo: (i) establecer el número de estaciones y decidir TSALBP [4] (Time and Space Assembly Line Balancing
qué operaciones se realizarán en cada puesto de trabajo en Problem) es una extensión natural de SALBP más próxima a
función de la demanda, (ii) ofrecer una distribución en planta situaciones industriales realistas. En efecto, TSALBP incorpora
que contemple tanto el espacio requerido por el producto y sus adicionalmente atributos espaciales relacionados tanto con el
componentes como los espacios adicionales para el desempeño espacio disponible para distribuir en planta las estaciones de
correcto del trabajo de los operarios, y (iii) evitar que el reparto trabajo como con el espacio requerido para ejecutar las tareas y
de cargas de trabajo entre estaciones genere lesiones físicas a para albergar los componentes de montaje del producto.
los trabajadores a medio-largo plazo. TSALBP presenta 8 variantes que resultan de considerar las
Dentro del sector de Automoción de los países de la OCDE, combinaciones de 3 criterios de optimización: � (número de
las líneas de montaje de modelos mixtos están capacitadas para estaciones), � (tiempo de ciclo) y � (área lineal disponible de
ensamblar distintos tipos de producto, como es el caso de las las estaciones).
plantas de motores que usan la misma instalación para fabricar Por su parte, TSALBP-ergo [5] (Time and Space Assembly
distintas versiones de motores para vehículos SUVs, furgonetas Line Balancing Problem with Ergonomic Risk) es una familia
y camiones. de problemas que incorpora a TSALBP el concepto de Riesgo
El ensamblado de estos tipos de producto está constituido Ergonómico tanto en la función objetivo como en restricciones
por tareas semejantes que presentan características comunes; adicionales en las estaciones de trabajo de la línea de montaje.
no obstante, cada tipo de producto requiere piezas específicas, Obviamente, TSALBP-ergo presenta 16 variantes al considerar
distintas formas de aplicar el trabajo, distintas herramientas y las combinaciones de 4 criterios de optimización: los 3 criterios
distintas habilidades y esfuerzo de los operarios. Obviamente, de TSALBP más � (riesgo ergonómico).
esta distinción se da tanto entre tipos de producto de la misma En este contexto, la flexibilidad en la fabricación es una
familia (v.g.- dos versiones de la familia SUVs) como entre propiedad importante de cara a que las grandes compañías
productos de distintas familias (v.g. SUVs o camiones). En puedan responder a cambios de su entorno económico. Entre
estos casos, el ensamblado de un motor requiere unas 400 dichos cambios está el de la variación de la demanda de sus
tareas que pueden agregarse en unas 150 operaciones básicas productos. Esta variación puede ser tanto global, afectando al
ya sea por conveniencia o condicionantes de tipo tecnológico. tiempo de ciclo de la línea, como parcial, afectando al mix de
Brevemente, una línea de montaje es un sistema productivo producción y a los atributos de las tareas (tiempos de proceso,
constituido por un conjunto de estaciones de trabajo a las que áreas requeridas y riesgos ergonómicos).
se asigna de manera exclusiva una serie de tareas. Cada tarea La variación del mix de producción, representada a través
requiere un tiempo de proceso (función de la actividad de los de planes de producción diarios, obliga a reequilibrar la línea.

626
XIII Congreso Español en Metaheurı́sticas y Algoritmos Evolutivos y Bioinspirados

Esta alteración conduce normalmente a la reconfiguración de ejecutar cómodamente la operación, las dimensiones de los
algunos o todos los puestos de trabajo, llegando a veces a ser contenedores de piezas relacionadas con la operación, así como
necesaria nueva obra civil. el espacio ocupado por herramientas y robots para llevar a cabo
Para evitar cambios notables en la distribución en planta de el montaje. Finalmente, son atributos contingentes de una tarea:
la línea, se puede recurrir a la implantación de soluciones que el factor y la categoría de riesgo que supone al operario realizar
sean lo más robustas posibles ante la variación de la demanda una tarea, y el tiempo de exposición del operario a dicha tarea.
[6]-[8]. Cuando la línea fabrica un único tipo de producto, los datos
En este trabajo proponemos métricas para TSALBP-ergo, que precisamos para resolver un problema de equilibrado son:
como extensión a [7], que permiten incorporar a los modelos el 1. El conjunto de operaciones (�: � = 1, . . , |�|) con sus
concepto de solución robusta [9] mediante restricciones y atributos elementales: tiempo de proceso �� : � ∈ �, área
funciones objetivo. Para ello, las restricciones y las funciones lineal requerida �� : � ∈ �, categoría de riesgo �� : � ∈ �,
objetivo contienen toda la información de un conjunto de
referencia de planes de demanda (también llamados escenarios) y riesgo ergonómico �� : � ∈ �.
que alteran los valores de los atributos temporales, espaciales y 2. El conjunto de estaciones de trabajo (�: � = 1, . . , |�|)
de contingencia de las tareas. Esto nos conduce a la definición 3. Las restricciones de precedencia, incompatibilidad
de funciones de robustez temporal, espacial y de riesgo que entre tareas y las restricciones que afectan a los
miden las sobrecargas de tiempo, espacio y riesgo ergonómico atributos de la línea: número de estaciones (�), tiempo
en las estaciones, así como el grado de factibilidad del conjunto de ciclo (�), área disponible en cada estación (�) y
de planes de demanda. riesgo ergonómico permisible (�).
El resto del texto sigue la siguiente estructura. La Sección Cuando la línea es de modelos mixtos, los atributos
II describe sucintamente la robustez en problemas ALB. En la elementales dependen de las tareas y productos, por tanto,
Sección III describimos las condiciones de TSALBP-ergo ante teniendo en cuenta el conjunto de tipos de producto (�: � =
una demanda incierta. En la Sección IV formalizamos y 1, . . , |�|), los atributos temporales, espaciales y contingentes
modelamos el problema objeto de estudio. En la Sección V adoptan respectivamente las formas siguientes: ��� , ��� , ��� ∶ � ∈
presentamos algunos ejemplos ilustrativos. Por último, en la � ⋏ � ∈ �.
Sección VI recogemos nuestras conclusiones. Para simplificar, aquí supondremos ��� = �� ��� (� ∈ � ⋏ � ∈
II. ROBUSTEZ EN LOS PROBLEMAS DE EQUILIBRADO DE LÍNEAS �), es decir: el riesgo ��� depende del tiempo de proceso ��� y de
la categoría de riesgo �� de la tarea � ∈ � (considerando solo un
Una forma de hallar soluciones robustas en ALBP consiste
factor de riesgo del conjunto de factores � (� = 1, . . , |�|))
en buscar configuraciones que se ajusten a todos los escenarios
Lógicamente, una línea de modelos mixtos debe atender a
posibles o, en su defecto, que ofrezcan un desempeño eficiente
diversos planes de demanda de productos que simbolizamos
en todos ellos [10], [7], [11]. En [12] se presenta un modelo
mediante el conjunto de escenarios Ε. No obstante, es común
robusto para ALB y un programa dinámico que minimiza el
realizar el equilibrado de la línea en función de un plan de
tiempo de ciclo de la línea considerando el peor escenario entre
demanda � ∈ Ε, que definimos mediante el vector de demanda
los posibles. En [13], se consideran diversos escenarios que
������⃗
�� = ��1� , … , �|�|� � o a través del vector mix de producción
caracterizan la demanda inestable en una línea de modelos
mixtos. ������⃗
�� = ��1� , … , �|�|� � - donde ��� es el número de unidades del
Otra forma de considerar la incertidumbre y la robustez en tipo de producto � ∈ � contenidas en el plan de demanda � ∈ Ε,
ALB es suponer que los tiempos de proceso de las tareas no y ��� es la proporción del modelo � ∈ � en el plan � ∈ Ε. Aquí
son deterministas sino que están contenidos en intervalos de se cumple: ������⃗
�� = ������⃗
�� /�� con �� = ∑∀� ��� .
valores y se obtienen a partir de una función de distribución Normalmente, el equilibrado de la línea se efectúa con los
conocida. En esta vía se encuentra el trabajo [14], enfocado al valores promediados de los atributos de las tareas en función de
SALBP-E, en el que se acotan los tiempos de proceso por un mix de producción. Por tanto, dado un mix de producción
intervalos y se busca un compromiso entre la minimización de ������⃗
la función objetivo y los valores de un ratio de estabilidad. En �� (� ∈ Ε), los tiempos de proceso, las áreas lineales y los
[15] se presentan dos modelos robustos de ALB que consideran riesgos ergonómicos de las tareas se determinan como en (1),
la incertidumbre con intervalos de valores de los tiempos de (2) y (3), respectivamente:
proceso de las operaciones. ∣�∣
��ɛ = � ��� ��ɛ , ∀� ∈ � ⋏ ∀� ∈ Ε (1)
III. TSALBP-ERGO SUJETO A UNA DEMANDA INCIERTA �=1
∣�∣
En nuestro ideario, las tareas en TSALBP-ergo poseen una ��ɛ = � ��� ��ɛ , ∀� ∈ � ⋏ ∀� ∈ Ε (2)
serie de atributos elementales. Dichos atributos, por su distinta �=1
∣�∣
naturaleza, los agrupamos aquí en 3 categorías o clases: (i) (3)
temporales, (ii) espaciales y (iii) contingentes. Estos atributos ��ɛ = � ��� ��ɛ , ∀� ∈ � ⋏ ∀� ∈ Ε
�=1
elementales están vinculados a cada operación básica de forma
Así, dado un mix de producción de referencia �������⃗
��0 (�0 ∈
individual.
Son atributos temporales de una tarea: el tiempo de proceso Ε), se dice que la línea de modelos mixtos está equilibrada
medido a actividad normal y el factor de actividad que se cuando todas las tareas del conjunto � han sido repartidas
establece para equilibrar la línea. Por su parte, son atributos coherentemente entre las estaciones de trabajo del conjunto �.
espaciales de una tarea: el área requerida por los operarios para Esto supone que a todo puesto de trabajo � ∈ � se asigna en

627
XVIII Conferencia de la Asociación Española para la Inteligencia Artificial

exclusiva un grupo de tareas que se denomina carga de trabajo ��� Variable binaria que vale 1 si la tarea � ∈ � se asigna
�� , respetando, en el reparto, todas las restricciones que afectan a la estación � ∈ �, y vale 0 en caso contrario.
a las estaciones. Por tanto, se cumple: �
��ɛ Variable binaria que vale 1 si el tiempo de la carga
(4) de la estación � ∈ �, correspondiente al plan de
� �� = � ⋏ (�� ⋂�� ′ = ∅ , ∀� ≠ � ′ )
�∈� demanda � ∈ Ε y a la configuración de referencia �0
de la línea, es mayor que el tiempo de ciclo – i.e.
� ���0 ≤ � , ∀� ∈ � (5)
�∈��
�� (�� ) > � – y vale 0 en caso contrario.

��ɛ Variable binaria que vale 1 si el área lineal de la
� ���0 ≤ � , ∀� ∈ � (6) carga de la estación � ∈ �, para el plan de demanda
�∈��
� ∈ Ε y la configuración de referencia �0 de la línea,
� ���0 ≤ � , ∀� ∈ � (7) es mayor que el área lineal disponible – i.e.
�∈��
�� (�� ) > � – y vale 0 en caso contrario.
La condición (4) representa la partición completa del �
��ɛ Variable binaria que vale 1 si el riesgo ergonómico
conjunto de tareas � entre las estaciones del conjunto �, y las de la carga de la estación � ∈ �, para el plan de
restricciones (5), (6) y (7) corresponden respectivamente a los demanda � ∈ Ε y la configuración �0 de la línea, es
límites que establecen el tiempo de ciclo �, el área lineal mayor que el riesgo ergonómico permisible – i.e.
disponible � y el riesgo ergonómico permisible �, sobre los �� (�� ) > � – y vale 0 en caso contrario.
valores de los atributos que resultan tras la asignación de tareas
�� Variable entera que representa el número de veces
a las estaciones de trabajo (∀� ∈ �). �
que �� (�� ) > � (∀� ∈ Ε, ∀� ∈ �): � � = ∑∀�∀� ��ɛ
IV. INCORPORANDO ROBUSTEZ AL TSALBP-ERGO �� Variable entera que representa el número de veces

Llamamos r-TSALB-ergo a la versión robusta de TSALB- que �� (�� ) > � (∀� ∈ Ε, ∀� ∈ �): � � = ∑∀�∀� ��ɛ
ergo. Aquí estableceremos las restricciones del nuevo modelo �� Variable entera que representa el número de veces

para un número fijo de estaciones de trabajo, y propondremos que �� (�� ) > � (∀� ∈ Ε, ∀� ∈ �): � � = ∑∀�∀� ��ɛ
un conjunto de métricas para la robustez de configuraciones de
líneas de montaje (soluciones: ζ) en r-TSALB-ergo, frente al B. Restricciones para el modelo r-TSALBP-ergo con número
conjunto de planes de demanda (Ε). fijo de estaciones de trabajo
A. Parámetros y variables ��� ∈ {0,1} , (∀� ∈ �, � ∈ �) (8)
� Conjunto de tipos de producto (�: � = 1, . . , |�|) � (9)
��ɛ ∈ {0,1} , (∀� ∈ �, � ∈ Ε)
�, �� Conjunto de tareas (�: � = 1, . . , |�|) y Conjunto de
tareas precedentes a la tarea � ∈ � (�� ⊆ �) �
��ɛ ∈ {0,1} , (∀� ∈ �, � ∈ Ε) (10)
� Conjunto de estaciones de trabajo (�: � = 1, . . , �) �
��ɛ ∈ {0,1} , (∀� ∈ �, � ∈ Ε) (11)
Ε Conjunto de planes de demanda (� ∈ Ε)
� ��� = 1 , (∀� ∈ �) (12)
�, �� , � Tiempo de ciclo, flexibilidad temporal y tiempo de
�∈�
proceso adicional en toda estación � ∈ �. Se define
ventana temporal así: � + Δ� = (1 + �� )� � ��� ≥ 1 , (∀� ∈ �) (13)
�∈�
�, �� , Δ� Área lineal disponible, flexibilidad espacial y área
lineal adicional en toda estación � ∈ �. Se define � �(��� − ��� ) ≤ 0 , (∀� ∈ �� ⊆ �) (14)
�∈�
ventana espacial así: � + Δ� = (1 + �� )�
� ) (15)
�, �� , Δ� Riesgo ergonómico admisible en toda estación � ∈ � ��ɛ ��� ≤ (� + Δ� ��ɛ , (∀� ∈ �, � ∈ Ε)
�∈�
�, flexibilidad contingente y riesgo adicional en
�) (16)
cada estación. Se define ventana de contingencia o � ��ɛ ��� ≤ (� + Δ� ��ɛ , (∀� ∈ �, � ∈ Ε)
�∈�
de riesgo así: � + Δ� = (1 + �� )�
�) (17)
��ɛ Tiempo de proceso promedio de la tarea � ∈ � en � ��ɛ ��� ≤ (� + Δ� ��ɛ , (∀� ∈ �, � ∈ Ε)
�∈�
función del mix de productos en el plan de demanda
� ∈ Ε – ecuación (1) - Las condiciones (8)-(11) permiten forzar la integridad de la
��ɛ Área lineal promedio requerida por la tarea � ∈ � en variables de decisión del modelo. Las igualdades (12) sirven
función del mix de productos en el plan de demanda para asignar cada tarea a una y solo una estación de trabajo.
� ∈ Ε – ecuación (2) - Las restricciones (13) obligan a que toda estación tenga al
menos una tarea asignada. Las restricciones (14) aseguran la
�� , ��ɛ Categoría de riesgo y riesgo ergonómico promedio
satisfacción de las precedencias entre tareas. Finalmente, las
asociado a la tarea � ∈ � en función del mix de restricciones (15)-(17) limitan respectivamente el valor de los
productos en el plan de demanda � ∈ Ε – ecuación atributos temporales, espaciales y contingentes, en cada
(3) – Supondremos ��ɛ =�� ��ɛ ∀� ∈ � ⋏ ∀� ∈ Ε estación y en cada plan de demanda.

628
XIII Congreso Español en Metaheurı́sticas y Algoritmos Evolutivos y Bioinspirados

C. Métricas para la robustez en TSALBP-ergo V. EJEMPLOS ILUSTRATIVOS


(mr.1) Proporción de planes del conjunto E satisfechos por la A. Datos y condiciones
solución �0 , según la limitación del tiempo de ciclo �. Adoptamos un caso de estudio de la línea de producción de
1 ∣Ε∣ motores mixtos de la fábrica de Barcelona de Nissan Motor
��1 = 1 − � ����∈� ��ɛ � (18) Ibérica, evaluando la robustez de soluciones ante un conjunto
∣ Ε ∣ �=1
de planes de demanda en un entorno industrial.
(mr.2) Proporción de estaciones sin sobrecarga de trabajo. Es Los 7 planes seleccionados para este artículo (� ∈ Ε) tienen
decir, proporción de estaciones de la línea con tiempo una demanda diaria de 270 motores; los detalles se recogen en
de carga menor o igual que el tiempo de ciclo c. la Tabla I.
1 ∣�∣
��2 = 1 − � ����∈Ε ��� � (19) TABLA I. DEMADAS DIARIAS POR TIPO DE MOTOR Y PLAN ���,� � PARA
� �=1 LAS INSTANCIAS CATEGÓRICAS NISSAN-9ENG.I (� ∈ �).
(mr.3) Proporción del tiempo de proceso adicional concedido � ∈ � � = 1 � = 2 � = 3 � = 6 � = 9 � = 12 � = 18
(Δ� ) que no emplea la solución �0 , Es igual a 1 cuando �1 30 30 10 50 70 24 60
��1 = 1 o ��2 = 1. �2 30 30 10 50 70 23 60
�3 30 30 10 50 70 23 60
1
��3 = 1 − � max �0, � ��ɛ ��� − � � : � � > 0, (20) �4 30 45 60 30 15 45 30
Δ� � � �5 30 45 60 30 15 45 30
∀�,� ∀�
�6 30 23 30 15 8 28 8
�� � � = 0 ⟹ ��3 = 1
�7 30 23 30 15 8 28 8
(mr.4) Proporción de planes del conjunto Ε satisfechos por la �8 30 22 30 15 7 27 7
solución �0 , según el área lineal disponible �. �9 30 22 30 15 7 27 7
1 ∣Ε∣ SUVs 90 90 30 150 210 70 180
��1 = 1 − � ����∈� ��ɛ � (21)
∣ Ε ∣ �=1 Vans 60 90 120 60 30 90 60
Truck 120 90 120 60 30 110 30
(mr.5) Proporción de estaciones que requieren un área lineal
Total 270 270 270 270 270 270 270
menor o igual que el área lineal disponible A.
∣�∣
1 � (22) En la línea se fabrican hasta 9 tipos de motores distintos
��2 = 1 − � ����∈Ε ��� (�1 , . . , �9 ) con diferentes destinos y características de montaje:
� �=1
los tres primeros tipos son para vehículos SUVs; los tipos �4 y
(mr.6) Proporción del área lineal adicional concedida (Δ� ) que
�5 son para furgonetas (vans); y los cuatro últimos se destinan
no emplea la solución ζ0 . Es igual a 1 cuando ��1 = 1 o a camiones comerciales (trucks) de medio tonelaje. Para una
��2 = 1. demanda equilibrada (idéntica demanda para los 9 tipos) y un
tiempo de ciclo de 3 minutos, la línea consta de 21 estaciones
1 en serie con una longitud media de 4 metros cada una. El
��3 = 1 − � max �0, � ��ɛ ��� − �� : � � > 0, (23)
Δ� �� número de tareas elementales para fabricar un motor asciende a
∀�,� ∀�
380 y su agrupación da lugar a 140 tareas de montaje. En
�� � � = 0 ⟹ ��3 = 1 [5],[16] se pueden consultar los tiempos de proceso ��ɛ , las
(mr.7) Proporción de planes del conjunto E satisfechos por la áreas lineales ��ɛ , las categorías de riesgo �� y los conjuntos de
solución �0 , según la limitación del riesgo �. precedencias �� de las 140 tareas de montaje.
1 ∣Ε∣
��1 = 1 − � ����∈� ��ɛ � (24) B. Resultados
∣ Ε ∣ �=1 Aquí analizamos cuatro configuraciones de línea mediante
(mr.8) Proporción de estaciones sin sobre-riesgo ergonómico: la aplicación de las métricas de robustez (mr.1-mr.9):
proporción de estaciones cuyo riesgo ergonómico no • Dos configuraciones de línea, ζ1 y ζ2 , con 18 estaciones,
excede al riesgo permisible �. 180s de ciclo, 5,5 metros de área lineal por estación, 500
1 ∣�∣ ergo-s de riesgo permitido y con coeficientes de flexibilidad
��2 = 1 − � ����∈Ε ��� � (25) (�� , �� , �� ) iguales al 5%. Las soluciones ζ1 y ζ2 se han
� �=1
obtenido mediante un IDEA adaptativo [7] y se muestran
(mr.9) Proporción del riesgo ergonómico adicional concedido en las Tablas II y III.
(Δ� ) que no emplea la solución �0 . Es igual a 1 cuando • Dos configuraciones de línea, ζ3 y ζ4 , con 25 estaciones,
��1 = 1 o ��2 = 1. 170s de ciclo, 3,5 metros de área lineal disponible por
estación, 320 ergo-s de riesgo permitido y con coeficientes
1 de flexibilidad (�� , �� , �� ) iguales al 5%. Las soluciones ζ3
��3 = 1 − � max �0, � ��ɛ ��� − �� : � � > 0, (26)
Δ� �� y ζ4 se muestran en las Tablas IV y V y se han obtenido
∀�,� ∀�
mediante un algoritmo GRASP [16], cuyo desempeño ha
�� � � = 0 ⟹ ��3 = 1 sido contrastado con PLEM.

629
XVIII Conferencia de la Asociación Española para la Inteligencia Artificial

TABLA II. CONFIGURACIÓN �1 (18, 5,5, 500, 5%) IDEA ADAPTATIVO A modo de resumen, la Tabla X recoge los valores de las 9
� � ∈ �� : carga de las estaciones métricas para las 4 configuraciones �1 − �4 (∀� ∈ Ε).
1 1 7 8 9 11
TABLA IV. CONFIGURACIÓN �3 (25, 3,5, 320, 5%) GRASP_MAX
2 3 4 5 10 13 14
3 6 12 16 17 19 20 21 � � ∈ �� : carga de las estaciones
4 15 18 22 23 24 25 26 27 28 1 1 10
5 2 29 30 31 32 34 36 2 13 14 11 3 9 18
6 33 35 37 38 39 40 41 43 3 17 15 21 20 19
7 42 44 45 46 47 48 49 59 60 4 5 4 6 16
8 50 51 52 53 54 55 56 57 58 5 26 27 25 23 22 7
9 61 62 63 64 65 66 67 70 6 24 28 29 30 8
10 68 69 71 72 73 74 75 7 31 32 36 33 35 37 34
11 76 77 78 79 80 81 82 83 84 86 8 39 40 38 43 41 59
12 85 87 88 89 90 91 92 99 9 42 44 45 46 48
13 93 94 95 96 98 100 101 103 10 49 47 50 54 55 53
14 102 104 105 106 107 108 109 110 111 112 113 11 56 52 51 60 57 64
114 115 12 58 61 62 63 66 67
15 116 117 118 119 120 131 13 70 65 68 71 72
16 121 122 123 128 132 134 135 136 14 73 69 74 76
17 97 124 125 126 127 129 137 138 139 15 79 75 77 78 81 80 82
18 130 133 140 16 83 84 85 86 88 87 89
17 90 91 99 92
TABLA III. CONFIGURACIÓN �2 (18, 5,5, 500, 5%) IDEA ADAPTATIVO 18 98 100 101 102 94 103
� � ∈ �� : carga de las estaciones 19 106 104 108 105 113 109 111 115 114 112 107
20 12 2 116 118
1 1 3 7 10 11
21 119 120 117 131 132 134 135
2 4 5 8 9 13 14 18
22 121 136 93 95 122
3 6 12 15 16 17 20
23 123 124 125 126 127 96 129
4 22 23 24 25 28 29 30 31 32 34
24 128 137 130 133 97
5 2 33 35 36 37 38
25 138 139 140 110
6 39 40 41 42 43 44 45
7 46 47 48 49 52 53 54 55 56 TABLA V. CONFIGURACIÓN �4 (25, 3,5, 320, 5%) GRASP_MED. SE
8 50 51 57 58 59 60 61 62 MUESTRA LAS CARGA DE LAS ESTACIONES 9,10 Y 16-21. LAS CARGAS
9 63 64 65 66 67 68 69 71 72 RESTANTES SON IDÉNTICAS A LAS DE LA CONFIGURACIÓN �3 .
10 70 73 74 75 76 77 78 � � ∈ �� : carga de las estaciones
11 21 80 81 82 83 84 85 86 87 88 89 9 42 44 45 46 47
12 19 26 90 91 92 98 10 49 48 50 54 55 53
13 27 94 95 99 100 101 102 103 104 108 109 16 83 84 85 86 88 87 91
110 111 17 90 89 99 92
14 107 112 113 114 115 116 117 118 18 98 100 101 106 103
15 105 106 119 120 121 122 123 124 19 102 104 108 105 113 109 111 115 114 112 94
16 79 93 128 131 132 134 135 136 20 12 2 116 119
17 96 97 125 126 127 129 137 138 139 21 107 118 120 117 131 132 134 135
18 130 133 140
En las Tablas VI-IX mostramos los resultados resaltables TABLA VI. TIEMPOS DE CARGA Y RIESGO DE CARGA PARA LAS
ESTACIONES SATURADAS O SOBRECARGADAS DE LA CONFIGURACIÓN �1 .
para las cuatro configuraciones. Debemos hacer notar que las
cuatro configuraciones son fuertemente robustas en atributos Tiempos de carga �(�� )

espaciales: ��ɛ = 0 (∀� ∈ �, � ∈ Ε). �\� 1 2 3 6 9 12 8
La configuración �1 . (Tabla VI) es fuertemente robusta en 3 178,0 178,2 177,3 179,1 180,0 177,8 179,6
tiempo y en cuanto a riesgo ergonómico solo hay sobrecarga en 12 180,0 179,6 179,5 179,8 179,9 179,7 179,6
las estaciones 7 y 12, en los 7 planes, por debajo del 5% de 17 180,0 179,6 179,5 179,6 179,7 179,7 179,4
flexibilidad concedida. La configuración �2 (Tabla VII) es casi- max 180,0 179,6 179,5 179,8 180,0 179,7 179,6
fuertemente robusta en tiempos; en riesgo solo hay exceso en la ��� 0,00 0,00 0,00 0,00 0,00 0,00 0,00
estación 7 por debajo del 5% de flexibilidad concedida.
Riesgos de carga �(�� )
Por su parte, las configuraciones �3 y �4 , aun siendo
�\� 1 2 3 6 9 12 18
semejantes, tienen distintas propiedades (Tablas VIII y IX). En
efecto, �4 es fuertemente robusta en riesgo y �3 casi también lo 7 510,0 511,3 511,3 511,2 511,2 510,9 511,8
es. En cuanto al tiempo de carga, tanto �3 como �4 exceden 12 520,0 518,8 518,4 519,3 519,3 519,1 518,9
levemente el tiempo de ciclo. max 520,0 518,8 518,4 519,3 519,3 519,1 518,9
��� 20,00 18,83 18,43 19,31 19,31 19,11 18,92

630
XIII Congreso Español en Metaheurı́sticas y Algoritmos Evolutivos y Bioinspirados

TABLA VII. TIEMPOS DE CARGA Y RIESGO DE CARGA PARA LAS carrocerías, vehículos, etc.), (iv) lista de materiales compleja y
ESTACIONES SATURADAS O SOBRECARGADAS DE LA CONFIGURACIÓN �2 .
con elevado número de componentes grandes y pesados, (v)
Tiempos de carga �(�� ) estaciones largas (300cm-1000cm), (vi) valores de los atributos
�\� 1 2 3 6 9 12 18 temporales, espaciales y de riesgo estables o con variabilidad
15 180,0 179,9 179,8 180,0 180,1 179,9 180,0 controlada, y (vii) demanda variable de los productos.
17 180,0 179,6 179,6 179,5 179,5 179,7 179,3 En trabajos futuros, propondremos metaheurísticas y otros
max 180,0 179,9 179,8 180,0 180,1 179,9 180,0 procedimientos híbridos, asistidos por la PLEM, para resolver
��� 0,00 0,00 0,00 0,00 0,06 0,00 0,00 diversas variantes del r-TSALBP-ergo.
Riesgos de carga �(�� ) AGRADECIMIENTOS
�\� 1 2 3 6 9 12 18
Este trabajo ha sido financiado por el Ministerio de
7 510,0 511,1 511,1 510,9 510,9 510,8 511,5
Economía y Competitividad (Gobierno de España) con el
max 510,0 511,1 511,1 510,9 510,9 510,8 511,5 proyecto TIN2014-57497-P (FHI-SELM2).
��� 10,00 11,09 11,13 10,94 10,94 10,83 11,46
REFERENCIAS
TABLA VIII. TIEMPOS DE CARGA Y RIESGO DE CARGA PARA LAS
ESTACIONES SATURADAS O SOBRECARGADAS DE LA CONFIGURACIÓN �3 . [1] Battaïa, O., Dolgui, A., 2013. A taxonomy of line balancing problems
and their solution approaches. International Journal of Production
Tiempos de carga �(�� ) Economics 142, 259–277.
�\� 1 2 3 6 9 12 18 [2] Boysen, N., Fliedner, M., Scholl, A., 2008. Assembly line balancing:
Which model to use when? International Journal of Production
25 170,0 170,8 171,5 170,0 169,4 170,8 170,1 Economics 111, 509–528.
max 170,0 170,8 171,5 170,0 169,4 170,8 170,1 [3] Scholl, A., Becker, C., 2006. State-of-the-art exact and heuristic solution
��� 0,00 0,78 1,45 0,03 0,00 0,82 0,08 procedures for simple assembly line balancing. European Journal of
Riesgos de carga �(�� ) Operational Research 168, 666–693.
�\� 1 2 3 6 9 12 18 [4] Bautista, J., Pereira, J., 2007. Ant algorithms for a time and space
constrained assembly line balancing problem. European Journal of
20 320,0 320,1 319,9 320,2 320,2 320,0 320,3 Operational Research 177, 2016–2032.
max 320,0 320,1 319,9 320,2 320,2 320,0 320,3 [5] Bautista, J., Batalla-García, C., Alfaro-Pozo, R. 2016. Models for
��� 0,00 0,09 0,00 0,20 0,20 0,01 0,32 assembly line balancing by temporal, spatial and ergonomic risk
attributes. European Journal of Operational Research 251, 814–829.
TABLA IX. TIEMPOS DE CARGA Y RIESGO DE CARGA PARA LAS [6] Chica, M., Cordón, O., Damas, S., Bautista, J., 2013. A robustness
ESTACIONES SATURADAS O SOBRECARGADAS DE LA CONFIGURACIÓN �4 . information and visualization model for time and space assembly line
balancing under uncertain demand. International Journal of Production
Tiempos de carga �(�� ) Economics 145, 761– 772.
�\� 1 2 3 6 9 12 18 [7] Chica, M., Bautista, J., Cordón, O., Damas, S. 2016. A multiobjective
21 170,0 170,7 170,9 170,7 170,5 170,5 171,0 model and evolutionary algorithms for robust time and space assembly
25 170,0 170,8 171,5 170,0 169,4 170,8 170,1 line balancing under uncertain demand. Omega 58, 55–68.
max 170,0 170,8 171,5 170,7 170,5 170,8 171,0 [8] Chica, M., Bautista, J., de Armas, J. 2018. Benefits of robust
multiobjective optimization for flexible automotive assembly line
��� 0,00 0,78 1,45 0,66 0,54 0,82 0,97 balancing. Flexible Services and Manufacturing Journal, 1-29.
Riesgos de carga �(�� ) https://doi.org/10.1007/s10696-018-9309-y
�\� 1 2 3 6 9 12 18 [9] Beyer, H., Sendhoff, B., 2007. Robust optimization - a comprehensive
20 320,0 318,9 318,8 319,0 319,0 319,3 318,5 survey. Computer Methods in Applied Mechanics and Engineering 196,
3190–3218.
max 320,0 318,9 318,8 319,0 319,0 319,3 318,5
[10] Xu, W., Xiao, T., 2011. Strategic robust mixed model assembly line
��� 0,00 0,00 0,00 0,00 0,00 0,00 0,00 balancing based on scenario planning. Tsinghua Science & Technology
16, 308–314.
TABLA X. VALORACIÓN SEGÚN MÉTRICAS DE ROBUSTEZ - [11] Simaria, A.S., Zanella de Sá, M., Vilarinho, P.M., 2009. Meeting
(��. 1 − ��. 9) - DE LAS 4 CONFIGURACIONES DE LÍNEA �1 − �4 (∀� ∈ Ε)..
demand variation using flexible u-shaped assembly lines. International
Journal of Production Research 47, 3937–3955.
��1 ��2 ��3 ��1 ��2 ��3 ��1,2,3
[12] Dolgui, A., Kovalev, S., 2012. Scenario based robust line balancing:
�1 1,00 1,00 1,00 0,00 0,89 0,91 1,00 Computational complexity. Discrete Applied Mathematics 160, 1955–
�2 0,86 0,89 0,99 0,00 0,94 0,93 1,00 1963.
�3 0,29 0,96 0,97 0,29 0,96 1,00 1,00 [13] Li, J., Gao, J., 2014. Balancing manual mixed-model assembly lines
�4 0,14 0,92 0,97 1,00 1,00 1,00 1,00 using overtime work in a demand variation environment. International
Journal of Production Research 52, 3552–3567.
VI. CONCLUSIONES [14] Gurevsky, E., Battaïa, O., Dolgui, A., 2012. Balancing of simple
assembly lines under variations of task processing times. Annals of
Hemos definido 9 métricas de robustez para el problema Operations Research 201, 265–286.
TSALBP-ergo basándonos en trabajos previos para TSALBP. [15] Hazir, Ö., Dolgui, A., 2013. Assembly line balancing under uncertainty:
Nuestra propuesta, r-TSALBP-ergo, será útil en las siguientes Robust optimization models and exact solution method. Computers &
circunstancias: (i) una línea de productos mixtos como sistema Industrial Engineering 65, 261–267.
productivo, (ii) un ensamblado complejo con adiestramiento y [16] Bautista-Valhondo, J., Alfaro-Pozo, R. 2018. A Case Study at the Nissan
especialización de los operarios y con tiempos de ciclo grandes Barcelona factory to minimize the ergonomic risk and its standard
deviation in a mixed-model assembly line. Progress in Artificial
(0.5’-15’), (iii) productos de grandes dimensiones (motores, Intelligence, 1-12. https://doi.org/10.1007/s13748-018-0153-9

631
XIII Congreso Español
de Metaheurísticas,
Algoritmos Evolutivos y
Bioinspirados
(XIII MAEB)
MAEB 7.1: SESIÓN E SPECIAL:
A PLICACIONES DE
SIMHEURISTICS EN
L OGÍSTICA, T RANSPORTE Y
C IUDADES INTELIGENTES
Organizadores:
JAVIER FAULÍN, H ELENA R AMALHINHO Y Á NGEL JUAN
XIII Congreso Español en Metaheurı́sticas y Algoritmos Evolutivos y Bioinspirados

Agile Optimization for Routing Unmanned Aerial


Vehicles under Uncertainty
Javier Panadero∗ , Alfons Freixes∗† ,Jose M. Mozos∗ , and Angel A. Juan∗†
∗ IN3
- Computer Science Dept.
Universitat Oberta de Catalunya
Barcelona ,08018, Spain
{jpanaderom, jmozosr, ajuanp}@uoc.edu
† Euncet Business School

08225 Terrassa, Spain


afreixes@euncet.es

Abstract—The use of unmanned aerial vehicles (UAVs) is intelligent transportation system (ITS), it would be possible to
gaining popularity in contexts such as smart cities, city logistics, replace human road support teams by a set of UAVs overflying
humanitarian logistics, natural disasters, or military operations. highways to monitor possible traffic violations and accidents,
One optimization challenge directly related to the use of UAVs is
the so-called team orienteering problem (TOP). In a TOP, each or for providing specific information to other transport users.
customer can either be visited only once by a single vehicle or not Technological support for interacting with other transport users
visited at all. Visiting each customer has associated a predefined is given by the ITS, dedicating a short-range communication
reward, and the driving ranges of vehicles are typically limited interface to UAV, which transmit information either vehicle-to-
by the duration of electric batteries. Due to the latter constraint, vehicle or vehicle-to-infrastructure. Using wireless links when
it is usual that not all customers can be visited. The main
goal is then to find a set of open tours that maximizes the being close to each other, connected UAV impose improved
total collected reward without exceeding the fleet capacity nor road safety and traffic efficiency. The execution of these
the driving range limitation. In this paper, we consider the specific roles requires coordination of and collaboration within
stochastic version of the problem, in which travel times are a group of UAVs. In particular, there is a need to design
modeled as random variables following theoretical probability effective routing plans for a group of UAVs that need to visit
distributions. To solve this stochastic version of the TOP, a
simheuristic algorithm combining a biased-randomized heuristic a series of locations in order to gather some information (e.g.,
with simulation techniques is proposed. One of the main goals of aerial pictures or videos, etc.). Thus, technological progress
our approach is to provide an ‘agile’ optimization methodology, is required in the fields of advanced algorithms and other
i.e., one lightweight algorithm that can be easily implemented in IT-based support tools to ensure: (i) a safe and effective
real-life scenarios under uncertainty and, at the same time, can navigation of UAV within the transportation infrastructure
provide solutions in real-time (just a few seconds or even less).
Index Terms—Metaheuristics, simulation, team orienteering
[7]; (ii) predictive analytics fed by critical data, which are
problem, unmanned aerial vehicles, agile optimization. needed for an efficient use of energy; and (iii) the use of
computer vision techniques and remote sensing information
I. I NTRODUCTION for processing aerial real-time video footage.
Initially proposed by [8], the team orienteering problem
The term ‘smart city’ refers to a series of urban systems and (TOP) is one realistic variation of the well-known vehicle
domains that are interconnected, via information technologies routing problem [9]. The TOP is gaining interest both in the
(ITs), with the purpose of optimizing their operations and scientific community and the industry due to the increasing
management [1]. Smart cities represent a multidisciplinary use of electric vehicles and unmanned aerial vehicles, where
research field that is under a continuous updating process driving range limitations need to be taken into account [10].
driven by urban, social, and technology evolution [2]. These Consider the following elements: (i) a set of customer nodes,
advances are generating new services and products for citizens, each of them with an associated reward score that can be
which also arises new challenges in data gathering, data collected the first time a customer is visited by any UAV; and
analytics, and efficient decision making. (ii) a team of m UAVs with limited driving-range capabilities.
Unmanned aerial vehicles (UAVs) are known for au- Then, the goal is to determine a set of m open routes (each of
tonomous operation and mobility. Though there are first stud- them connecting an origin depot with a destination depot),
ies available [3] [4], the usage of UAVs in smart cities is not which maximizes the total collected reward by visiting a subset
fully explored yet. Until today they were mainly used for and of available customers without violating the driving range
effectively integrated in military activities, surveillance, secu- constraint.
rity, precision agriculture and goods and services deliveries [5] Notice that each customer can either be visited once or
[6], while there are still concerns on their effective and reliable not visited at all. Also, due to the driving range limitation,
implementation in smart cities. With the use of a reliable and it is possible that not all customers can be visited. Being an

635
XVIII Conferencia de la Asociación Española para la Inteligencia Artificial

7 tion III describes our biased-randomized heuristic for solving


the deterministic TOP. Section IV describes our extension to
4 12
a simheuristic to solve the STOP. A round of computational
8 experiments for the STOP are described in Section V. Finally,
Route 1 4
6 Section VI summarizes the highlights of this paper and pro-
Origin Des$na$on
poses some future research lines.
(Node 0) (Node n+1)
II. R ELATED W ORK
6 T~ LogN(µ, σ) 7
Route 2 The team orienteering problem was first introduced in
10 [8]. To solve the TOP, they propose a heuristic approach
9
where the stops that are farthest from the start and the finish
2
8 nodes are selected as seeds for the team members, and all
3 7
possible remaining points are inserted into the routes using the
Fig. 1: Routing UAVs and the team orienteering problem cheapest insertion rule. If unassigned points remain, new team
routes are constructed. Additional approaches used to solve
the deterministic TOP have been proposed in the literature.
extension of the vehicle routing problem in which a subset Although we can find some exact methods, such as branch-
of customers have to be selected and a set of routes cover- and-cut [15] or branch-and-cut-and-price algorithms [16] to
ing them constructed, the TOP is also a NP-hard problem. solve the TOP, only small-scale instances can be solved with
Accordingly, different metaheuristic approaches have been these methods.
proposed in recent years to deal with large-scale instances [15] propose a particle swarm optimization (PSO) method
of the deterministic version of the problem. However, the to solve the TOP. Similarly, [17] present a multi-start simulated
stochastic counterpart, which considers real-life uncertainty in annealing (SA) algorithm to address the TOP. It integrates an
the form of random service and travel times, has received much SA stage inside a multi-start procedure to reduce the possi-
less attention. This paper analyzes a stochastic TOP variant in bility of getting trapped in a local optima. Genetic algorithms
which travel times are modeled as random variables (Figure 1). (GA) have been also proposed in this area. For instance, [18]
In particular, we consider the problem of recollecting as much introduce a GA which imitates the natural process of evolution
reward as possible from visiting customers using a fleet of m to solve the TOP. Other approach to solve the TOP is proposed
UAVs with driving ranges limited by the time-duration of their by [19]. These authors present a Pareto mimic algorithm,
batteries. An example of practical application could be the use which uses a mimic operator to generate a new solution by
of UAVs to take pictures of different locations after a natural imitating an incumbent solution.
disaster, a terrorist attack, or a humanitarian crisis. Notice The stochastic version of the orienteering problem has
that each of these pictures can provide valuable information only received attention in recent years. To the best of our
that can help to improve the conditions of the people affected knowledge, previous work has only considered the single-route
by the event or even to save their lives by making informed problem rather than the STOP that we analyze here. There
decisions on the more reliable evacuation paths. is also some variation in which aspects of the problem are
Finding a solution (set of open routes) that maximizes stochastic. For example, the original stochastic single-vehicle
the total expected reward is usually the main goal of the orienteering problem (OP) [20] defines the OP with stochastic
stochastic team orienteering problem (STOP). However, since profits, which assumes that only the scores associated with
solutions to the STOP are applied in a stochastic environment, each node are stochastic – in particular, it is assumed they
other statistical properties should be considered too. Thus, for follow a Normal probability distribution. There are also other
instance, one could be interested in solutions offering a high works that study the OP with stochastic travel times [21]–
reliability level, i.e., routing plans with a low probability of [24]. This version can be classified as the orienteering problem
violating the driving-range threshold. with stochastic weights. Notice that our work extends these
This paper proposes a simulation-optimization algorithm to previous ones by considering multiple vehicles or routes.
efficiently cope with the STOP. First, a biased-randomized In developing solutions to the STOP, one critical question
heuristic for solving the deterministic TOP is introduced. This is how to deal with open routes which exceed the designated
heuristic is then extended into a simheuristic algorithm [11] to time limit imposed by the driving-range constraint. In [25],
solve the stochastic TOP. Due to their effectiveness, simheuris- exceeding the time limit incurs in a penalty cost that is
tic algorithms are being increasingly used in solving different proportional to the amount exceeding it. A similar approach is
stochastic variants of the vehicle routing problem, like the used in [26]. An alternative concept is presented in [27], where
stochastic inventory routing problem [12], the stochastic waste the probability of exceeding the time limit must be lower than
collection problem [13], or the stochastic arc routing problem a threshold value. The problem presented by [21] is partially
[14]. different, since they do not force the vehicle to return to a set
The remaining sections of this paper are structured as of depots but, instead, it can stop at any location once the time
follows: Section II reviews related work on the TOP. Sec- limit is reached. Also, penalties are incurred if a vehicle does

636
XIII Congreso Español en Metaheurı́sticas y Algoritmos Evolutivos y Bioinspirados

not manage to visit a scheduled node within the time limit. Algorithm 1 Savings-based heuristic for the TOP
In contrast, [24] keep the hard constraint on the tour length 1: sol ← generateDummySolution(Inputs)
2: savingsList ← computeSortedSanvingsList(Inputs, α)
that is used in the deterministic version of the problem and 3: while (savingsList is not empty) do
abort the route if the expected arrival time to the destination 4: arc ← selectNextArcAtRandom(savingsList, β )
depot is equal to the remaining time. In the previous works, 5: iRoute ← getStartingRoute(arc)
6: jRoute ← getClosingRoute(arc)
solving methodologies such as VNS metaheuristics and two- 7: newRoute ← mergeRoutes(iRoute, jRoute)
stage stochastic optimization were employed. 8: travelTimeNewRoute ← calcRouteTravelTime(newRoute)
9: isMergeValid ← validateMergeDrivingCon-
straints(travelTimeNewRoute, drivingRange)
III. A B IASED -R ANDOMIZED H EURISTIC FOR ROUTING 10: if (isMergeValid) then
UAV S 11: sol ← updateSolution(newRoute, iRoute, jRoute, sol)
12: end if
A novel constructive heuristic for the TOP has been de- 13: deleteEdgeFromSavingList(arc)
signed as a first step in our solving approach. One of the 14: end while
15: sortRoutesByProfit(sol)
main goals of our proposed heuristic is to provide an ‘agile‘ 16: deleteRoutesByProfit(sol, maxVehicles)
optimization methodology. The term ‘agile‘ referring to sot- 17: return sol
fware development methodologies (‘agile‘ programming) was
introduced by Beck et. al. [28], and it refers to any rapid and
easy software development of high-quality. Inspired in this where sij = ti(n+1) + t0j − tij (Figure 2b), and α ∈ (0, 1).
definition, we propose an ‘agile‘ optimization methodology The specific value of α needs to be empirically tuned, since it
to develop optimization lightweight algorithms, which can be will depend on the heterogeneity of the customers in terms of
easily implemented in a short period of time, and they can be rewards. Thus, in a scenario with high heterogeneity, α will
used in a efficient way in real-life scenarios under uncertainty, be close to zero. On the contrary, α will be close to one for
providing solutions in real-time (just a few seconds). homogeneous scenarios. Notice that for each edge there are
The proposed heuristic, which has been designed following two associated savings, depending on the actual direction in
this ‘agile‘ optimization methodology, it is inspired on the which the edge is traversed. Thus, each edge generates two
well-known savings heuristic for the vehicle routing problem different arcs.
[29]. It has to be adapted to consider the particular character- After computing all the savings, the list of arcs can be
istics of the TOP, i.e.: (i) the origin depot could be different sorted from higher to lower savings. Then, a route-merging
from the destination one; (ii) not all the customers have to process, based on the savings list, is started. In each iteration,
be visited; and (iii) the reward collected by visiting nodes the savings list of arcs is randomized using a biased probability
must be considered during the construction of the routing plan. distribution, and an arc is selected (line 4). As discussed in
The goal was to design a new savings-based heuristic able to detail in Juan et al [31], the biased randomization of the
outperform the traditional one employed for solving the TOP savings list allows arcs to be selected in a different order
[30]. in each iteration, where arcs with higher savings are more
Algorithm 1 provides a high-level description of the con- likely to be selected than those with lower savings, while
structive heuristic. It starts by generating an initial dummy at the same time, the logic behind the savings heuristic is
solution (line 1), in which one route per customer is considered maintained. In our case, a skewed Geometric Distribution is
–i.e., for each customer i ∈ A, a vehicle departs from the employed to induce this biased randomization behaviour. The
origin depot (node 0), visits i, and then resumes its trip Geometric Distribution uses one single parameter, β, which
towards the destination depot (node n + 1) (Figure 2a). If is relatively easy to set since 0 < β < 1. After completing
any route in this dummy solution does not satisfy the driving- some preliminary tests with different values for and analysing
range constraint, the associated customer is discarded from the corresponding outcomes, we decided to set β = 0.3 in
the problem, since it cannot be reached with the current fleet our computational experiments. The selected arc connects two
of vehicles. Next, we compute the ‘savings’ associated with routes, which are merged into a new route as far as this new
each edge connecting two different customers (line 2), i.e.: the route does not violate the driving-range constraint (line 9).
benefits obtained by visiting both customers in the same route Finally, the list of routes are sorted according to the total
instead of using distinct routes. reward provided (line 15) to select as many routes from this
list as possible taking into account the restricted number of
In order to compute the savings associated with an edge, one
vehicles in the fleet.
has to consider both the travel time required to traverse that
This heuristic is encapsulated within a multi-start process.
edge as well as the aggregated reward generated by visiting
This allows to run the biased-randomised heuristic several
both customers. Thus, we define the concept of savings, s′ij
times, thus increasing our chances of finding a better solution.
as described in Equation 1. Notice that it takes into account
the trade-off between the classical time-based savings, sij , and IV. A S IMHEURISTIC FOR ROUTING UAV S UNDER
the aggregated reward, ui + uj , i.e.: U NCERTAINTY
Algorithm 2 provides an overview of our multi-stage
s′ij = α · sij + (1 − α) · (ui + uj ) (1) simheuristic approach, which extends the biased-randomized

637
XVIII Conferencia de la Asociación Española para la Inteligencia Artificial

1 expected return; and (ii) its reliability, measured in terms of


Route 1 the percentage of routes that are effectively completed without
violating the driving range constraint. Also, whenever the
2 stochastic value of the newSol outperforms that of the baseSol
Origin
Des$na$on and / or that of some elite solution (eliteSols), these solutions
(Node n+1)
(Node 0) Route 2 are updated to newSol.
V. C OMPUTATIONAL E XPERIMENTS : S TOCHASTIC C ASE
n
Route n There are not STOP instances to compare with in the
(a) Dummy Solution
literature. For that reason, we have extended the deterministic
instances proposed in [8] into stochastic ones.
ti(n+1) In our computational experiments, we have modeled the
i travel times Tij using Log-Normal probability distributions.
toi As discussed in [32], the Log-Normal distribution is a more
tij
natural choice than the Normal distribution when modeling
j non-negative random variables, such as the elapsed time until
tj(n+1) an event occurs (e.g., the time it takes the vehicle to traverse
Des$na$on
Origin
(Node n+1) a given edge). In a real-world application, historical data
(Node 0) toj
could be used to model each Tij by a different probability
(b) Time-based savings distribution. The Log-Normal has two parameters, namely: the
Fig. 2: Dummy solution (top) and time-based savings (down). location parameter, µ, and the scale parameter, σ. According
to the properties of the Log-Normal distribution, these param-
eters will be given by the following expressions considering
heuristic in order to deal with the STOP. In the first stage, stochastic travel times between nodes i and j:
 
a feasible initial solution (initSolution) is constructed using 1 V ar[Tij ]
µij = ln(E[Tij ]) − ln 1 + (2)
the savings-based heuristic described in Section III (line 1). 2 E[Tij ]2
During the second stage, an adaptive heuristic enhances the s  
initial feasible solution by iteratively exploring the search V ar[Tij ]
σij = ln 1 + (3)

space and conducting a ‘reduced’ number of simulation runs E[Tij ]2

that allow to: (i) obtain observations on the total time em-
ployed by the current solution (from which the expected time In our experiments, which extend classical deterministic in-
and other statistics can be estimated); and (ii) provide feedback stances into stochastic ones, it is assumed that E[Tij ] = tij
that can be used by the heuristic to better guide the search (∀i, j ∈ N ), being tij the travel time provided in the determin-
(e.g., by updating the base solution according to the estimated istic instance. Similarly, it is considered that V ar[Tij ] = c·tij ,
statistics). From this stage, a reduced set of ‘elite’ solutions is being c ≥ 0 a design parameter. Notice that the deterministic
obtained. instances are a particular case of the stochastic ones, which
Notice that during the second stage, whenever a newSol is are obtained for c = 0. In our experiments, we have used the
‘promising’, it is sent through a fast Monte Carlo simulation value c = 0.05.
process (line 8) to estimate the following values: (i) the The classic deterministic benchmarks consist of 7 different
classes, Table I refers to class 1, and it shows: (i) the best-
known solution for the deterministic variant of the problem
Algorithm 2 Simheuristic approach (BKS), obtained from the existing TOP literature; (ii) our best
1: initSolution ← ComputeInitSolution(Inputs) solution for the deterministic variant of the problem (OBS-D);
2: fastSimulation(solution) ⊲ Monte Carlo Simulation
3: baseSol ← initSolution
(iii) the computational time in seconds to obtain the OBS-D;
4: while (ending condition is not met) do (iv) the gap between the BKS and the OBS-D; (v) the reward
5: newSol ← savingBasedHeuristic(Inputs, α, β) ⊲ biased-randomized of OBS-D when it is applied as a solution of the stochastic
heuristic
6: if (detProfit(newSol) improves detProfit(baseSol) then
variant of the problem (OBS-D-S); (vi) our best solution for
7: fastSimulation(newSol) ⊲ Monte Carlo Simulation the stochastic variant of the problem (OBS-S); and (vii) the
8: if (stochProfit(newSol) improves stochProfit(baseSol) then computational time in seconds to obtain the OBS-S.
9: baseSol ← newSol
10: if (stochProfit(baseSol) improves worstStochProfit(eliteSols)
Figure 3 shows, for the analyzed class, the percentage
then gaps between: (i) the best-found deterministic solution when
11: eliteSols ← update(eliteSols, baseSol) applied into stochastic conditions (OBS-D-S) and itself when
12: end if
13: end if
applied in a deterministic environment (OBS-D); and (ii) the
14: end if best-found stochastic solution when applied into stochastic
15: end while conditions (OBS-S) and the best-found solution for the deter-
16: return eliteSols
ministic version (OBS-D). Notice that the OBS-S boxplot is

638
XIII Congreso Español en Metaheurı́sticas y Algoritmos Evolutivos y Bioinspirados
TABLE I: Results for class 1 benchmark instances. VI. C ONCLUSION
Deterministic execution Stochastic execution
Instance BKS OBS-D Time (s) Gap (%) OBS-D-S OBS-S Time (s) The incorporation of unmanned aerial vehicles in urban
Reward [1] Reward [2] [3] [4](1-2) E[Reward] [5] E[Reward] [6] [7]
p1.2.b 15 15 0 0.0 14.3 14.3 4 areas describe promising research fields whose full potential
p1.2.c 20 20 0 0.0 18.2 18.2 4
p1.2.d 30 30 0 0.0 26.0 26.3 4 are still to be explored in future. Still, these innovations raise a
p1.2.e 45 45 0 0.0 41.7 42.2 4
p1.2.f 80 80 0 0.0 64.6 70.5 5 number of concerns and challenges that complicate decision-
p1.2.g 90 90 0 0.0 75.8 83.7 4
p1.2.h 110 110 0 0.0 97.5 103.6 17 making processes for citizens and city managers. New hybrid
p1.2.i 135 135 0 0.0 94.5 122.9 4
p1.2.j 155 155 0 0.0 123.1 141.0 5
optimization-simulation and optimization-machine-learning al-
p1.2.k
p1.2.l
175
195
175
195
0
5
0.0
0.0
124.2
125.8
163.3
179.5
7
9
gorithms have to be developed to efficiently face these chal-
p1.2.m
p1.2.n
215
235
215
235
9
0
0.0
0.0
170.2
152.9
201.4
218.8
16
5
lenges. Scenarios for dynamic and uncertain real-life features
p1.2.o
p1.2.p
240
250
240
250
4
0
0.0
0.0
204.4
167.3
230.7
230.9
7
5
have to be included.
p1.2.q 265 265 1 0.0 205.4 247.8 7
p1.2.r 280 280 21 0.0 168.9 259.9 4
p1.3.c 15 15 0 0.0 14.3 14.3 6
ACKNOWLEDGMENT
p1.3.d 15 15 0 0.0 15.0 15.0 6
p1.3.e 30 30 0 0.0 24.9 27.0 6 This work has been partially supported by the Spanish Min-
p1.3.f 40 40 0 0.0 31.8 32.6 23
p1.3.g 50 50 0 0.0 44.2 48.4 6 istry of Economy and Competitiveness, FEDER (TRA2015-
p1.3.h 70 70 1 0.0 66.3 66.3 11
p1.3.i 105 105 0 0.0 87.2 94.1 6 71883-REDT) and the Erasmus+ program (2016-1-ES01-
p1.3.j 115 115 0 0.0 90.7 102.2 6
p1.3.k 135 135 0 0.0 109.2 121.4 17 KA108-023465).
p1.3.l 155 155 0 0.0 124.0 138.8 13
p1.3.m 175 175 16 0.0 127.7 159.5 9
p1.3.n 190 190 1 0.0 152.2 175.1 15 R EFERENCES
p1.3.o 205 205 0 0.0 163.5 183.0 11
p1.3.p 220 220 1 0.0 177.5 199.0 32
p1.3.q 230 230 1 0.0 190.0 218.0 6 [1] S. E. Bibri and J. Krogstie, “On the social shaping dimensions of
p1.3.r 250 250 17 0.0 207.2 233.5 27 smart sustainable cities: A study in science, technology, and society,”
p1.4.d 15 15 0 0.0 14.3 14.3 8
p1.4.e 15 15 0 0.0 15.0 15.0 8
Sustainable Cities and Society, vol. 29, pp. 219–246, 2017.
p1.4.f 25 25 0 0.0 23.2 23.2 8 [2] M. Angelidou, “Smart cities: A conjuncture of four forces,” Cities,
p1.4.g 35 35 0 0.0 30.1 34.3 8
p1.4.h 45 45 0 0.0 37.9 40.8 9
vol. 47, pp. 95–106, 2015.
p1.4.i 60 60 0 0.0 48.5 55.0 8 [3] A. G. Foina, R. Sengupta, P. Lerchi, Z. Liu, and C. Krainer, “Drones in
p1.4.j 75 75 8 0.0 63.1 67.2 8 smart cities: Overcoming barriers through air traffic control research,”
p1.4.k 100 100 27 0.0 86.3 86.3 8
p1.4.l 120 120 0 0.0 107.1 116.0 9 in Research, Education and Development of Unmanned Aerial Systems
p1.4.m 130 130 0 0.0 112.0 124.9 10 (RED-UAS), 2015 Workshop on. IEEE, 2015, pp. 351–359.
p1.4.n 155 155 0 0.0 121.4 135.7 8
p1.4.o 165 165 0 0.0 129.6 149.0 28 [4] O. B. Jensen, “Drone city-power, design and aerial mobility in the age
p1.4.p 175 175 6 0.0 152.2 159.1 16 of” smart cities”,” Geographica Helvetica, vol. 71, no. 2, p. 67, 2016.
p1.4.q 190 190 6 0.0 167.1 171.9 8
p1.4.r 210 210 0 0.0 170.8 191.1 9 [5] H. Menouar, I. Guvenc, K. Akkaya, A. S. Uluagac, A. Kadri, and
Average: 3 0.0 10 A. Tuncer, “Uav-enabled intelligent transportation systems for the smart
city: Applications and challenges,” IEEE Communications Magazine,
vol. 55, no. 3, pp. 22–28, 2017.
[6] F. Mohammed, A. Idries, N. Mohamed, J. Al-Jaroodi, and I. Jawhar,
“Opportunities and challenges of using uavs for dubai smart city,” in New
Technologies, Mobility and Security (NTMS), 2014 6th International
Conference on. IEEE, 2014, pp. 1–4.
[7] E. N. Barmpounakis, E. I. Vlahogianni, and J. C. Golias, “Unmanned
aerial aircraft systems for transportation engineering: Current practice
and future challenges,” International Journal of Transportation Science
and Technology, vol. 5, no. 3, pp. 111–122, 2016.
[8] I.-M. Chao, B. Golden, and E. Wasil, “The team orienteering problem,”
European Journal of Operational Research, vol. 88, pp. 464–474, 1996.
[9] J. Caceres-Cruz, P. Arias, D. Guimarans, D. Riera, and A. A. Juan, “Rich
vehicle routing problem: Survey,” ACM Computing Surveys (CSUR),
vol. 47, no. 2, p. 32, 2015.
[10] A. A. Juan, J. Goentzel, and T. Bektaş, “Routing fleets with multiple
driving ranges: Is it possible to use greener fleet configurations?” Applied
Soft Computing, vol. 21, pp. 84–94, 2014.
[11] A. A. Juan, J. Faulin, S. E. Grasman, M. Rabe, and G. Figueira,
“A review of simheuristics: Extending metaheuristics to deal with
stochastic combinatorial optimization problems,” Operations Research
Perspectives, vol. 2, no. 1, pp. 62–72, 2015.
[12] A. Gruler, J. Panadero, J. de Armas, J. A. M. Pérez, and A. A. Juan, “A
Fig. 3: Boxplot comparison of gaps OBS-D-S and OBS-S w.r.t. variable neighborhood search simheuristic for the multiperiod inventory
OBS-D. routing problem with stochastic demands,” International Transactions
in Operational Research, 2018.
[13] A. Gruler, C. Fikar, A. A. Juan, P. Hirsch, and C. Contreras-Bolton,
“Supporting multi-depot and stochastic waste collection management in
clustered urban areas via simulation–optimization,” Journal of simula-
always closer to the OBS-D value than the OBS-D-S boxplot. tion, vol. 11, no. 1, pp. 11–19, 2017.
[14] S. Gonzalez-Martin, A. A. Juan, D. Riera, M. G. Elizondo, and J. J.
In other words, employing the best-found deterministic plan Ramos, “A simheuristic algorithm for solving the arc routing problem
into a stochastic environment usually leads to suboptimal with stochastic demands,” Journal of Simulation, vol. 12, no. 1, pp.
solutions. Notice also that the OBS-D value can be seen 53–66, 2018.
[15] D.-C. Dang, R. N. Guibadj, and A. Moukrim, “An effective pso-inspired
as an upper bound for the expected reward under stochastic algorithm for the team orienteering problem,” European Journal of
conditions. Operational Research, vol. 229, no. 2, pp. 332–344, 2013.

639
XVIII Conferencia de la Asociación Española para la Inteligencia Artificial

[16] M. Keshtkaran, K. Ziarati, A. Bettinelli, and D. Vigo, “Enhanced exact


solution methods for the team orienteering problem,” International
Journal of Production Research, vol. 54, pp. 591–601, 2015.
[17] S. Lin, “Solving the team orienteering problem using effective multi-start
simulated annealing,” Applied Soft Computing, vol. 13, pp. 1064–1073,
2013.
[18] J. Ferreira, A. Quintas, and J. Oliveira, “Solving the team orienteering
problem: developing a solution tool using a genetic algorithm approach,”
in Soft computing in industrial applications. Advances in Intelligent
Systems and Computing: 223. Springer, 2014, pp. 365–375.
[19] L. Ke, L. Zhai, J. Li, and F. Chan, “Pareto mimic algorithm: an approach
to the team orienteering problem,” Omega, vol. 61, pp. 155–166, 2015.
[20] T. Ilhan, S. Iravani, and M. Daskin, “The orienteering problem with
stochastic profits,” IIE Transactions, vol. 40, pp. 406–421, 2008.
[21] A. Campbell, M. Gendreau, and B. Thomas, “The orienteering problem
with stochastic travel and service times,” Annals of Operations Research,
vol. 186, pp. 61–81, 2011.
[22] V. Papapanagiotou, R. Montemanni, and L. Gambardella, “Objective
function evaluation methods for the orienteering problem with stochastic
travel and service times,” Journal of Applied Operations Research,
vol. 6, pp. 16–29, 2014.
[23] C. Verbeeck, P. Vansteenwegen, and E.-H. Aghezzaf, “Solving the
stochastic time-dependent orienteering problem with time windows,”
European Journal of Operational Research, vol. 255, pp. 699–718, 2016.
[24] L. Evers, K. Glorie, S. van der Ster, A. Barros, and H. Monsuur, “A
two-stage approach to the orienteering problem with stochastic weights,”
Computers and Operations Research, vol. 43, pp. 248–260, 2014.
[25] S. Teng, H. Ong, and H. Huang, “An integer l-shaped algorithm for
time-constrained traveling salesman problem with stochastic travel and
service times,” Asia-Pacific Journal of Operational Research, vol. 21,
pp. 241–257, 2004.
[26] H. C. Lau, W. Yeoh, P. Varakantham, D. T. Nguyen, and
H. Chen, “Dynamic stochastic orienteering problems for risk-aware
applications,” CoRR, vol. abs/1210.4874, 2012. [Online]. Available:
http://arxiv.org/abs/1210.4874
[27] H. Tang and E. Miller-Hooks, “A tabu search heuristic for the team
orienteering problem,” Computers & Operations Research, vol. 32, no. 6,
pp. 1379–1407, 2005.
[28] K. Beck, M. Beedle, A. van Bennekum, A. Cockburn, W. Cunningham,
M. Fowler, J. Grenning, J. Highsmith, A. Hunt, R. Jeffries, J. Kern,
B. Marick, R. C. Martin, S. Mellor, K. Schwaber, J. Sutherland,
and D. Thomas, “Manifesto for agile software development,” 2001.
[Online]. Available: http://www.agilemanifesto.org/
[29] G. Clarke and J. Wright, “Scheduling of vehicles from a central depot
to a number of delivery points,” Operations Research, vol. 12, pp. pp.
568–581, 1964.
[30] H. Tang and E. Miller-Hooks, “A tabu search heuristic for the team
orienteering problem,” Computers & Operations Research, vol. 32, no. 6,
pp. 1379–1407, 2005.
[31] A. A. Juan, J. Faulin, R. Ruiz, B. Barrios, and S. Caballé, “The sr-gcws
hybrid algorithm for solving the capacitated vehicle routing problem,”
Appl. Soft Comput., vol. 10, no. 1, pp. 215–224, Jan. 2010. [Online].
Available: http://dx.doi.org/10.1016/j.asoc.2009.07.003
[32] A. A. Juan, J. Faulin, S. E. Grasman, D. Riera, J. Marull, and C. Mendez,
“Using safety stocks and simulation to solve the vehicle routing problem
with stochastic demands,” Transportation Research Part C: Emerging
Technologies, vol. 19, no. 5, pp. 751–765, 2011.

640
XIII Congreso Español en Metaheurı́sticas y Algoritmos Evolutivos y Bioinspirados

A Simheuristic Algorithm for the Team


Orienteering Problem
Javier Faulin∗ ,Angel A. Juan†‡ , Lorena Reyes∗ , Javier Panadero† , Carlos Ospina∗ , Jose M. Mozos†
∗ ISC - Institute of Smart Cities.
Public University of Navarre
Pamplona, 31006, Spain
{javier.faulin, lorena.reyes}@unavarra.es
cospinatrujillo@gmail.com
† IN3 - Computer Science Dept.

Universitat Oberta de Catalunya


Barcelona, 08018, Spain
{ajuanp, jpanaderom, jmozosr}@uoc.edu
‡ Euncet Business School

Terrassa, 08225, Spain

Abstract—Unmanned aerial vehicles (UAVs) or drones are nodes in N. Each customer i ∈ N has a stochastic reward
being utilized by logistics systems in the context of smart cities. (Ui ) and a service time (STi ). Similarly, each edge (i, j) is
Here, we present a current application of the uses of drones characterized by a traveling time (tij ). The total traveling time
through the Team Orienteering Problem (TOP). The TOP is
a combinatorial optimization problem aimed at a practical per route is limited by a driving range time (T lim), which
approach for the urban transportation problems, such as traffic represents the battery life of each UAV. The objective is to
monitoring, freight transport, information transfer, safety, emer- determine the subset of customers to be visited by each route
gency situations management and other uses. This abstract copes (including the visiting order) which maximizes the expected
with a TOP version in which a fleet of drones has to visit a reward considering the T lim as a hard constraint.
series of customers. We assume that each visit to customers relies
on a stochastic reward which implies a variable service time. The solution approach can be considered as a specialized
Thus, a simheuristic algorithm is proposed as a solving approach case of simulation-based optimization, where only metaheuris-
integrating simulation inside a multi-start heuristic framework. tics are employed as optimization components and the simula-
A series of computational experiments contribute to illustrate the tion feedback helps to better guide the metaheuristic searching
potential benefits of our work. process in a vast space of feasible solutions. In particular,
Index Terms—Team Orienteering Problem, stochastic Re-
wards, variable service times, simheuristic algorithm.. our simheuristic algorithm combines Monte Carlo simulation
(MCS) with a multi-start metaheuristic framework. All in all,
our simheuristic approach aims at finding routing solutions
I. I NTRODUCTION
offering both high expected rewards and reliability indexes.
In a supply chain, a transport system is typically defined Finally, an expanded version or this work can be read in [1],
as a robust set of links that allows a continuous flow of which presents a stochastic version of the TOP using UAVs.
resources such as information, money, and products. This set
of links connects suppliers, production locations, retailers, and II. S OLUTION APPROACH
customers. The introduction of new technologies allows to Our solving approach relies on a simheuristic algorithm, it is
consider real-time data that can be useful in order to identify composed of two different components: an optimization one
suitable links at each time. Moreover, the European Commis- –which searches for promising solutions– and a simulation
sion has proposed different initiatives and some governmental one –which assesses the promising solutions in a stochastic
projects to facilitate the emergence of sustainable and smart environment and guides the searching process. Regarding the
cities. Likewise, this transport system ensures quick responses optimization component, we use a multi-start meta framework
to dynamic conditions of markets. in which the constructive phase uses biased-randomization
Practical applications of the TOP rely on stochastic rewards techniques [2], [3]. Figure 1 describes our simheuristic algo-
and service times associated to the customers visits. Hence, rithm.
we propose a simheuristic algorithm to deal with a TOP In the multi-start procedure, a feasible solution is built for
with stochastic rewards and service times. This combinatorial deterministic version of the problem. There, the concept of
optimization problem can be described as an undirected graph ‘savings’ is introduced as a criterion for merging routes, and
G = (N, A), where N is a set of n nodes (including it is based on the savings in time associated with completing
customers as well as an origin and a destination depot) and the merged route instead of the two original ones. This concept
A = {(i, j)/i, j ∈ N } is the set of edges connecting all is extended to the concept of ‘preference’, which is a linear

641
XVIII Conferencia de la Asociación Española para la Inteligencia Artificial
TABLE I: Comparison of the simheuristic algorithm results
and the best known solutions (BKS).
b−a
Instance Tlim BKS BDS BSS (a) BDS* (b) b
(%)
p3.4.t 27.5 670 670 487.29 485.50 0.37
p4.4.d 20 38 38 27.46 27.16 1.08
p5.4.v 27.5 1320 1320 938.63 901.8 4.17
Average 1.88

expected that as c converges to zero, the results from the


stochastic version converge to those obtained in the determin-
istic scenario.
In order to validate the quality of our approach in the
deterministic environment, where results are available in the
literature, we compare our results with the best-known solution
(BKS). We solve the 3 instances from the set d proposed by
[4]. Each instance involves a number of UAVs (fleet size),
number of nodes, and maximum route duration T lim. The
traveling time is estimated under the assumption that U AV s
travel at a unitary speed. The performance of our approach
is reported in the columns BDS, BSS, BDS*, both for the
Fig. 1: Scheme of our algorithm. deterministic and the stochastic environments solution. Notice
that our simheuristic algorithm reaches the (deterministic)
BKS for all tested instances, even when the run time was
combination of savings and accumulated rewards. Then, a limited to 60 seconds.
merging that generates a greater accumulated reward will be Table I presents the expected reward associated with the
prioritized over another one with similar time-based savings. deterministic solution BDS, which is compared with our best
Only a merging can be completed if the total expected time stochastic solution BDS*. According to these results, the best
after the operation does not exceed the driving-range threshold. stochastic solution provides an expected reward which is, on
The concept of preference is used to generate a sorted list the average, up to 1.88% better than the expected reward
of potential mergings, and these are completed following the provided by the best deterministic solution when employed
corresponding order, from higher to lower preference. Further- in a stochastic environment. As a result, solutions for the
more, we employ biased-randomization techniques, selecting deterministic version of the problem should not be used in
the promising mergings using a probabilistic algorithm follow- solving the stochastic version, since they become suboptimal
ing a Geometric Distribution. Hence, merging operations with under uncertainty scenarios.
a larger preference are more likely to be selected.
Once a feasible solution with a high reward is determined,
IV. C ONCLUSION
it is defined as the best deterministic solution. Then, MCS is
incorporated to assess the quality of this solution, in terms of
This work presents a simheuristic algorithm to solve a
the expected reward and reliability (the probability that each
stochastic version of the TOP, where driving-range limitations
route does not exceeds the driving-range). Thus, a feasible
of unmanned aerial vehicles are also considered. Under un-
solution is iteratively constructed, building one element at a
certain conditions is hardly to ensure feasible solutions, i.e.,
time in the multi-start procedure. As a result, the simulation
a route can request more time to be completed than the one
procedure provides a feedback to simheuristic algorithm to
provided by the battery duration. Our simheuristic algorithm
better guide the searching process. At the end of this stage,
allows to assess the quality of promising solutions and the
the solution with the highest expected reward and reliability
estimation of the solution reliability.
level is defined as the best stochastic solution.
III. C OMPUTATIONAL RESULTS ACKNOWLEDGMENT
Since there are no benchmark instances for the TOP with
stochastic rewards and constrained driving ranges, we modified This work has been partially supported by the Spanish
and extended a deterministic data set from the literature. We Ministry of Economy and Competitiveness (TRA2013-48180-
assumed that the stochastic rewards, Ui , follow a Truncated C3-P and TRA2015-71883-REDT) FEDER, and the Ibero-
Normal Distribution with parameters µ(Ui ) and σ(Ui )). The American Program for Science and Technology for Develop-
value of σ(Ui ) is estimated as: c·µ(Ui ), where c is a parameter ment CYTED2014-515RT0489). Likewise, we want to thank
that allows exploring different levels of uncertainty. It is the support of the UPNA doctoral program.

642
XIII Congreso Español en Metaheurı́sticas y Algoritmos Evolutivos y Bioinspirados

R EFERENCES
[1] L. Reyes-Rubiano, J. M. Mozos, J. Panadero, C. Ospina-Trujillo, J. Faulin,
and A. Juan, “The team orienteering problem with stochastic service times
and driving-range limitations: A simheuristic approach. pending: presen-
tation and publication,” in Proceedings of the 2018 Winter Simulation
Conference, M. Rabe, A. Juan, N. Mustafee, A. Skoogh, S. Jain, and
B. Johansson, Eds., 2018.
[2] A. A. Juan, I. Pascual, D. Guimarans, and B. Barrios, “Combining biased
randomization with iterated local search for solving the multidepot vehicle
routing problem,” International Transactions in Operational Research,
vol. 22, no. 4, pp. 647–667, 2015.
[3] O. Dominguez, A. A. Juan, B. Barrios, J. Faulin, and A. Agustin,
“Using biased randomization for solving the two-dimensional loading
vehicle routing problem with heterogeneous fleet,” Annals of Operations
Research, vol. 236, no. 2, pp. 383–404, 2016.
[4] I.-M. Chao, B. L. Golden, and E. A. Wasil, “The team orienteering
problem,” European Journal of Operational Research, vol. 88, no. 3,
pp. 464–474, 1996.

643
XVIII Conferencia de la Asociación Española para la Inteligencia Artificial

Current Trends in Simheuristics: from smart


transportation to agent-based simheuristics
Alejandro Estrada-Moreno, Angel A. Juan, Javier Panadero, Carles Serrat, and Alfons Freixes

Abstract—Simheuristics extend metaheuristics by adding a that we analyze other statistics such as its variance, different
simulation layer that allows the optimization component to deal percentile values, or its reliability level.
efficiently with scenarios under uncertainty. This presentation
reviews both initial as well as recent applications of simheuristics,
The main goals of this presentation are: (i) to provide a
mainly in the area of logistics and transportation. We also discuss commented review of recent applications of simheuristics in
a novel agent-based simheuristic (ABSH) approach that combines the area of transportation; and (ii) to analyze trends as well as
simheuristic and multi-agent systems to efficiently solve stochastic open research lines.
combinatorial optimization problems. The presentation is based
on papers [1], [2], and [3], which have been already accepted in
the prestigious Winter Simulation Conference. II. R ECENT A PPLICATIONS IN T RANSPORTATION
Index Terms—simheuristics, stochastic optimization, logistics
& transportation, agent-based simheuristics.
[6] discuss the need for optimizing urban waste collection
in modern smart cities and formulate the problem as an exten-
I. I NTRODUCTION sion of the vehicle-routing problem. The authors first develop a
Real-life optimization problems are often NP-hard and competitive metaheuristic, based on a variable neighborhood-
large-scale in nature, which makes traditional exact methods search framework, to solve the deterministic variant. Then,
inefficient to solve them.Thus, the use of heuristic and meta- they extend their approach into a simheuristic to cope with
heuristic algorithms to obtain high-quality solutions in low unexpected waste levels inside the containers. Their algorithm
computing times is required. With the increasing advances in is tested using a large-scaled benchmark set for the waste-
computing hardware and software, simulation has become a collection problem with several realistic constraints. Their
‘first-resource’ method for analyzing complex systems under results include a risk analysis considering the variance of the
uncertainty [4]. Thus, simulation is frequently employed in ar- waste level and vehicle safety capacities.
eas such as logistics and transportation, manufacturing, supply The uncapacitated facility-location problem with stochastic
chain management, or smart cities. These systems are modeled service costs is analyzed in [7]. First, the authors propose an
and then simulated to get insights on their performance under extremely fast savings-based heuristic, which generates real-
different base scenarios. Simulation, however, is not an opti- time solutions for the deterministic version of the problem.
mization tool. Thus, whenever a decision maker aims to find This can be extremely useful in telecommunication appli-
an optimal configuration for a system, she requires the use cations, where ‘good’ solutions are needed in just a few
of optimization methods. Often, the associated optimization milliseconds for large-scale networks.
problems are addressed by assuming deterministic inputs and [8] propose a simheuristic algorithm for solving the arc-
constraints, which allows us to simplify them but at the cost routing problem with stochastic demands. Here, the authors
of not considering the real-life uncertainty that characterizes use Monte Carlo simulation to extend the RandSHARP heuris-
these systems. tic, which was originally designed to solve the deterministic
Simheuristic algorithms integrate simulation methods in- version of the problem. During the design of the routing plan,
side a metaheuristic optimization framework to deal with they make use of safety stocks, which allow vehicles to deal
large-scale and NP-hard stochastic optimization problems. with unexpectedly high demands during the actual distribution
Hybridization of simulation techniques with metaheuristics process.
allows us to consider stochastic variables in the objective [9] consider a stochastic version of the capacitated facility-
function of the optimization problem, as well as probabilistic location problem, proposing two facility-location models
constraints in its mathematical formulation. As discussed in representing alternative distribution policies in e-commerce
[5], the simulation component deals with the uncertainty in the (outsourcing vs. in-house distribution). The multi-period
model and provides feedback to the metaheuristic component inventory-routing problem with stochastic customer demands
in order to guide the search in a more efficient way. Notice is analyzed in [10]. A variable neighborhood search is ex-
also that, when dealing with stochastic optimization problems, tended into a simheuristic algorithm to consider variations in
performance statistics other than expected values must be the forecasted demands. With the aim of finding optimal refill
taken into account: while in deterministic optimization one can policies for each customerperiod combination, the authors take
focus on finding a solution that minimizes cost or maximizes into account that the quantity serviced at the beginning of one
profits, a stochastic version of the problem might require period will affect the inventory levels at the end of that period.

644
XIII Congreso Español en Metaheurı́sticas y Algoritmos Evolutivos y Bioinspirados

III. C URRENT T RENDS • Integration with machine learning: being a flexible and
relatively simple approach, simheuristics can be inte-
Some of the following trends in the use of simheuristics can grated with machine-learning approaches and, in particu-
be identified and are expected to play a relevant role in future lar, with learnheuristics in order to consider optimization
publications on this topic, therefore constituting open research problems with dynamic inputs.
lines to be yet fully explored: • Multi-population simheuristics: all the examples reviewed
• A higher level of simulation-optimization integration: a here are based on single-population metaheuristics; how-
deeper integration between the metaheuristic component ever, integration of simulation within multi-population
and the simulation component, including increasing use metaheuristics (e.g., genetic algorithms, etc.) might be
of the feedback provided by the simulation better to guide worth exploring too since different individuals in a popu-
the search for better solutions. lation might be based on different statistics obtained from
• Additional objectives: a rising interest in considering the simulation component.
optimization goals different from the expected value of • Agent-based simheuristics: similar to the way agent-based
a solution for the stochastic optimization problem; this modeling and simulation extends the more traditional
includes measuring other statistics reliability/robustness concept of discrete-event simulation and benefits from
levels, and even considering multi-objective optimization distributed and parallel computing systems, one could
problems. consider agent-based simheuristics as a multi-agent ex-
• Systems of increasing complexity: moving from isolated tension of the simheuristic concept, where each agent is
logistics or transportation problems to integrated prob- an autonomous and differentiated simheuristic algorithm
lems that reflect the complexity of supply networks, that interacts with the rest of the agents while searching
where interactions between different echelon stages also for a near-optimal solution to a complex and stochastic
need to be considered in order to increase global effi- combinatorial optimization problem.
ciency. R EFERENCES
• Use of more sophisticated simulation approaches: as the
[1] A. A. Juan, D. W. Kelton, C. Currie, and J. Faulin, “Simheuristics
complexity of the systems increases, more advanced sim- applications: dealing with uncertainty in logistics, transportation, and
ulation approaches are required to take into account the other supply chain areas,” in Proceedings of the 2018 Winter Simulation
dynamic and possibly nonstationary time-evolution of the Conference, M. Rabe et al., Ed. Piscataway, New Jersey: IEEE Press,
2018.
system and the interactions among its many components. [2] J. Panadero, A. A. Juan, C. Corlu, J. Mozos, and S. Onggo, “Agent-
• Enhanced identification of promising solutions: to speed based simheuristics: extending simulation-optimization algorithms via
up the computations, during a typical simheuristic process distributed and parallel computing,” in Proceedings of the 2018 Winter
Simulation Conference, M. Rabe et al., Ed. Piscataway, New Jersey:
only a reduced set of solutions are classified as ‘promis- IEEE Press, 2018.
ing’ and sent to the simulation component; enhanced [3] A. Estrada-Moreno, C. Serrat, M. Nogal, M. Cavero, and A. A. Juan,
strategies to classify a new solution as a promising one “Distribution planning in a weather-dependent scenario with stochastic
traveling times: a simheuristic approach,” in Proceedings of the 2018
can be employed. Winter Simulation Conference, M. Rabe et al., Ed. Piscataway, New
• Statistically significant number of runs: in some of the Jersey: IEEE Press, 2018.
examples reviewed in this paper, a 2-stage approach [4] T. W. Lucas, W. D. Kelton, P. J. Sanchez, S. M. Sanchez, and B. L.
Anderson, “Changing the paradigm: Simulation, now a method of first
is used; in the first stage the promising solutions are resort,” Naval Research Logistics (NRL), vol. 62, no. 4, pp. 293–303,
simulated using a reduced number of runs, while in 2015.
the second stage longer simulations are executed on the [5] A. A. Juan, J. Faulin, S. E. Grasman, M. Rabe, and G. Figueira,
“A review of simheuristics: Extending metaheuristics to deal with
‘elite’ solutions provided in the first stage to increase stochastic combinatorial optimization problems,” Operations Research
the statistics’ accuracy and precision. However, statistical Perspectives, vol. 2, pp. 62–72, 2015.
concepts could be employed to set the precise number of [6] A. Gruler, C. L. Quintero, L. Calvet, and A. A. Juan, “Waste collection
under uncertainty: a simheuristic based on variable neighbourhood
runs required in each stage in order to obtain estimates search,” European Journal of Industrial Engineering, vol. 11, no. 2,
with a given level of precision. pp. 228–255, 2017.
• Extending the application fields: so far, most simheuris- [7] J. De Armas, A. A. Juan, J. M. Marquès, and J. P. Pedroso, “Solving
the deterministic and stochastic uncapacitated facility location problem:
tics have been applied in the area of transportation, from a heuristic to a simheuristic,” Journal of the Operational Research
logistics,and production.However, similar stochastic op- Society, vol. 68, no. 10, pp. 1161–1176, 2017. [Online]. Available:
timization problems can be found in other application https://doi.org/10.1057/s41274-016-0155-6
[8] S. Gonzalez-Martin, A. A. Juan, D. Riera, M. G. Elizondo, and J. J.
fields such as telecommunications, finance, health-care Ramos, “A simheuristic algorithm for solving the arc routing problem
systems, and smart cities. with stochastic demands,” Journal of Simulation, vol. 12, no. 1, pp.
• Heuristic-supported simulation: while the examples re- 53–66, 2018.
[9] A. Pages-Bernaus, H. Ramalhinho, A. A. Juan, and L. Calvet, “Design-
viewed here refer to optimization problems in which ing e-commerce supply chains: a stochastic facilitylocation approach,”
simulation is used to support the search carried out by International Transactions in Operational Research, 2017.
the metaheuristic, it is also possible to use heuristics [10] A. Gruler, J. Panadero, J. DeArmas, J. A. Moreno-Perez, and A. A.
Juan, “A variable neighborhood search simheuristic for the multi-
or metaheuristics to optimize certain system parameters period inventory routing problem with stochastic demands,” Interna-
during a large simulation experiment. tional Transactions in Operational Research, 2018.

645
XVIII Conferencia de la Asociación Española para la Inteligencia Artificial

Designing e-commerce supply chains


A stochastic facility–location approach

Adela Pagés-Bernaus Helena Ramalhinho


Department of Mathematics Department of Economics and Business
University of Lleida Universitat Pompeu Fabra
Lleida, Spain Barcelona, Spain
adela.pages@matematica.udl.cat helena.ramalhinho@upf.edu

Angel A. Juan Laura Calvet


IN3 – Department of Computer Science IN3 – Department of Computer Science
Open University of Catalonia Open University of Catalonia
Barcelona, Spain Barcelona, Spain
ajuanp@uoc.edu lcalvetl@uoc.edu

Abstract— e-Commerce activity has been increasing during in the presence of uncertainty. Since the capacity at each DC is
recent years, and this trend is expected to continue in the near limited, the problem is modeled as a Capacitated Facility
future. e-Commerce practices are subject to uncertainty Location Problem (CFLP) with stochastic demands. There are
conditions and high variability in customers’ demands. two CFLP variants differing in whether customers can be
Considering these characteristics, we propose two facility– served from one DC (single source) or more (multiple source).
location models that represent alternative distribution policies in In this paper, it is assumed that customers can be served from a
e-commerce. These models take into account stochastic demands number R of different facilities. So, each customer will have at
as well as more than one regular supplier per customer. Two most R facilities as regular providers. This variant is denoted as
methodologies are then introduced to solve these stochastic
the CFLP with regular providers (CFLPrp).
versions of the well-known capacitated facility–location problem.
The first is a two-stage stochastic-programming approach that
uses an exact solver. However, we show that this approach is not II. SOLUTION APPROACH AND COMPUTATIONAL RESULTS
appropriate for tackle large-scale instances due to the To solve the proposed models, we propose two approaches:
computational effort required. Accordingly, we propose a one based on Deterministic Equivalent Model (DEM) and
simheuristic approach that solves large-scale instances in short
another based on simheuristics methods, which in this case the
computing times. An extensive set of benchmark instances
contribute to illustrate the efficiency of our approach, as well as
method proposed hybridizes an ILS metaheuristic with
its potential utility in modern e-commerce practices. simulation. The SimILS is an Iterated Local Search based
method, where the local search stage focuses on providing
Keywords—component; formatting; style; styling; insert (key configurations of open/closed facilities, as well as on the
words) selection of the regular DCs. In the simulation stage,
customers’ assignment decisions are made. Since the
simulation stage is time-consuming, only “promising”
I. THE E-COMMERCE SUPPLY CHAIN DESIGN PROBLEM
solutions are tested in a stochastic environment.
The e-commerce in developed countries is steadily
increasing, reaching a noticeable share of all commerce during The computational experiments are performed on the
the last years. One of the main strategic decisions that e- Beasley. For the small–medium instances, both approaches
commerce enterprises must face is the location of their provide solutions of similar quality (with an average gap of
facilities or distribution centers (DCs). Note that this decision −0.18% for model A and −0.41% for model B in favor of the
has an impact on the daily logistics activity and, consequently, stochastic-programming approach). However, the time
on the customers’ quality of service. employed by the SimILS approach is one order of magnitude
smaller. Moreover, for the larger instances G4 the SimILS
This summary presents the work of Pagés-Bernaus (2017) increases the required computing time but is able to provide
[1] published recently. The work presents mathematical models feasible solutions.
that represent the decisions how the online distributors select
the DC locations and how to perform the subsequent III. CONCLUSIONS
assignment of customers to these facilities.
This summary presents two facility–location models, which
The goal of this work is to study this supply-chain design consider stochastic demands as well as a restricted number of
problem and to analyze the impact of different delivery policies regular suppliers per customer. These models were inspired in

646
XIII Congreso Español en Metaheurı́sticas y Algoritmos Evolutivos y Bioinspirados

a real e-commerce supply design problem. We propose two instances in reasonable computing times, while providing also
different approaches to solve the models representing this competitive results for smaller instances
problem. On the one hand, we use a two-stage stochastic-
programming methodology. On the other hand, we propose a
simheuristic algorithm, combining an ILS metaheuristic with REFERENCES
simulation. According to the computational results obtained,
the stochastic-programming approach is efficient but limited to
small- and medium-sized instances. On the contrary, the [1] Pagès-Bernaus A., Ramalhinho H., Juan A.A., Calvet (2018), Designing
E-commerce Supply Chains: a stochastic facility-location approach,
proposed simheuristic approach is able to solve large-sized International Transactions in Operational Research (First published: 3
July 2017). DOI: 10.1111/itor.12433.

647
XIII Congreso Español
de Metaheurísticas,
Algoritmos Evolutivos y
Bioinspirados
(XIII MAEB)

MAEB 7.2:
A LGORITMOS M ULTIOBJETIVO
Y A PLICACIONES
XIII Congreso Español en Metaheurı́sticas y Algoritmos Evolutivos y Bioinspirados

Resumen extractivo de texto multidocumento


usando un enfoque de optimización multiobjetivo
basado en colonia de abejas artificiales
Jesus M. Sanchez-Gomez Miguel A. Vega-Rodrı́guez Carlos J. Pérez
Departamento de Matemáticas Depto. Tecnologı́a de Computadores y Comunicaciones Departamento de Matemáticas
Universidad de Extremadura Universidad de Extremadura Universidad de Extremadura
Cáceres, España Cáceres, España Cáceres, España
jmsanchezgomez@unex.es mavega@unex.es carper@unex.es

Resumen—Los métodos automáticos de resumen de texto extractivos seleccionan subconjuntos del texto original. El
son cada vez más necesarios en la actualidad. Los enfoques objetivo principal del resumen extractivo multidocumento es
de resumen extractivo multidocumento pretenden obtener el representar la información más importante en una versión
contenido principal de una colección de documentos a la vez que
reducen la información redundante, lo que puede ser abordado reducida de los documentos originales, manteniendo los conte-
desde un enfoque de optimización multiobjetivo. En este trabajo nidos principales y reduciendo la redundancia. De esta manera,
se ha diseñado e implementado un algoritmo MOABC (Multi- los usuarios pueden obtener las ideas principales del texto de
Objective Artificial Bee Colony) para esta tarea. Los experimentos forma rápida.
se han realizado en base a conjuntos de datos de DUC (Document Como se ha definido, la naturaleza del resumen extractivo
Understanding Conferences), y se han evaluado con las métricas
ROUGE (Recall-Oriented Understudy for Gisting Evaluation). Los multidocumento es multiobjetivo, pero la mayorı́a de los
resultados muestran mejoras importantes: del 31,09 % y del enfoques en la literatura cientı́fica se basan en modelos de
18,63 % para el ROUGE-2 y del 8,43 % y del 6,09 % para el optimización mono-objetivo (p. ej. [5]). En estos enfoques
ROUGE-L, con respecto a los mejores resultados de enfoques solo se optimiza una función objetivo, la cual incluye a su vez
mono-objetivo y multiobjetivo de la literatura cientı́fica. Además, varios objetivos que deben ser ponderados. Esta asignación de
se ha demostrado que los valores ROUGE obtenidos son más
estables, con una reducción en la dispersión relativa de entre pesos es subjetiva, lo que influye mucho en la solución final.
620,63 % y 1333,95 %, es decir, entre 6 y 13 veces más robustos. Hasta la fecha solo se ha propuesto un enfoque de optimiza-
ción multiobjetivo [6], el cual ha obtenido mejores resultados
Palabras clave—Resumen de texto multidocumento, optimiza- que los enfoques mono-objetivo. Por lo tanto, el resumen
ción multiobjetivo, colonia de abejas artificiales, cobertura del automático de texto multidocumento mediante optimización
contenido, reducción de la redundancia.
multiobjetivo es una lı́nea de investigación muy reciente, en
la que la hipótesis principal es que al utilizar la optimización
I. I NTRODUCCI ÓN
multiobjetivo se pueden obtener mejores resultados que con la
En la actualidad, la cantidad de información en Internet crece optimización mono-objetivo.
de forma exponencial en cualquier tema, y los usuarios desean En este trabajo, el resumen extractivo multidocumento es
obtener solo la información más relevante sobre dicho tema lo abordado mediante el algoritmo MOABC (Multi-Objective Ar-
más rápido posible. Una forma de extraer esta información es tificial Bee Colony), el cual maximiza simultáneamente tanto
mediante herramientas de minerı́a de texto [1], con el fin de la cobertura del contenido como la reducción de la redundancia
poder generar automáticamente un resumen a partir de toda la de la colección de documentos. Los experimentos se han
información del tema en cuestión [2], cubriendo la información realizado en base al conjunto de datos de DUC (Document
más importante y evitando la redundancia de la misma. Understanding Conferences) y los rendimientos del modelo
Existen varios métodos de resumen automático: depen- se han evaluado con las métricas ROUGE (Recall-Oriented
diendo de si la información se obtiene de uno o de más Understudy for Gisting Evaluation). El enfoque propuesto ha
documentos, el resumen puede ser mono-documento o mul- obtenido resultados que mejoran las medias ROUGE de los
tidocumento [3]. Un resumen mono-documento reduce la mejores enfoques de la literatura cientı́fica, obteniendo además
información del documento a una breve representación, mien- resultados más estables.
tras que un resumen multidocumento selecciona información
de toda la colección de documentos. Además, los métodos II. T RABAJO RELACIONADO
también pueden ser abstractivos o extractivos [4]. Los métodos En esta sección se muestra una revisión de las principales
abstractivos pueden construir un resumen con palabras o frases técnicas de optimización que se han implementado para el
que no existen en el texto original, mientras que los métodos resumen extractivo multidocumento.

651
XVIII Conferencia de la Asociación Española para la Inteligencia Artificial

En primer lugar, se revisan los trabajos mono-objetivo, III. D EFINICI ÓN DEL PROBLEMA
donde todos los objetivos son ponderados subjetivamente para En esta sección se define el resumen de texto multidocumento
obtener una función única. [7] consideró el resumen orientado como un problema de optimización. Los métodos más usados
a consultas de documentos como un problema de optimiza- en este contexto son los métodos de representación de vectores
ción global con cuatro objetivos, en el que los experimentos de términos (palabras), donde cada oración se representa
se realizaron con enfoques linealizados y lexicográficos. [8] como un vector de términos, y la similitud entre oraciones
propuso un método genérico de resumen multidocumento se compara por pares mediante el uso de algún criterio. El
basado en la agrupación de oraciones, resolviéndolo con una criterio mayormente utilizado es la similitud coseno, como en
modificación del algoritmo de optimización de enjambre de [5] y [6].
partı́culas (PSO). [9] diseñó un modelo de resumen de texto
no supervisado basado en la programación lineal entera, que III-A. Similitud coseno
resolvió con un algoritmo de ramificación y poda (B&B) y
Dado el conjunto T = {t1 , t2 , . . . , tm }, que contiene los
un algoritmo PSO. [10] y [11] propusieron el resumen multi-
m términos distintos de la colección de documentos D.
documento como un problema de la p-mediana modificada,
Suponiendo un total de n oraciones, cada oración si de D
implementando [10] un algoritmo de evolución diferencial
se representa como un vector, si = (wi1 , wi2 , . . . , wim ), i =
(DE) autoadaptativo y [11] un algoritmo de evolución diferen-
1, 2, . . . , n, donde cada elemento es el peso de su término
cial basado en mutación y cruce autoadaptativos (DESAMC).
correspondiente. Este peso wik está asociado con el término
[12] y [13] abordaron el resumen de documentos como un
tk en la oración si , y puede calcularse usando el esquema
problema de programación no lineal 0-1, donde la función
frecuencia del término - frecuencia inversa de la oración
objetivo se definió como la media heroniana de los criterios,
(tf isf ), donde tf mide cuántas veces aparece el término
y el problema fue resuelto con el algoritmo PSO en ambos
en una oración, e isf mide cuántas oraciones de D contienen
casos. [5] consideró el resumen de documentos como un
el término [22], de la siguiente forma:
problema de optimización discreta, proponiendo un algoritmo
DE adaptativo para resolverlo. [14] y [15] consideraron la wik = tfik · log(n/nk ), (1)
programación booleana cuadrática, donde la función objetivo
era una combinación ponderada de los objetivos. En ambos donde tfik cuenta cuántas veces aparece el término tk en la
casos se implementó un algoritmo DE binario. [16] propuso el oración si , y log(n/nk ) es el factor isf , donde nk denota el
resumen de documentos como un problema de programación número de oraciones que contienen el término tk .
entera cuadrática, resolviéndolo con un algoritmo PSO. [17] El contenido principal de D se puede resumir cuantitativa-
describió un enfoque basado en optimización para el resumen mente con la media de los pesos de los m términos en T con
de documentos, implementando un algoritmo DE mejorado. un vector medio o = (o1 , o2 , . . . , om ), donde cada componente
[18] presentó el resumen de documentos como un problema se calcula como sigue:
de optimización lineal y no lineal, utilizando un algoritmo PSO n
para resolverlo. [19] describió el resumen multidocumento 1X
ok = wik , k = 1, 2, . . . , m. (2)
como un problema de optimización binaria, proponiendo un n i=1
algoritmo de selección elitista intergeneracional, recombina-
Finalmente, la similitud coseno se calcula a partir de
ción heterogénea y mutación cataclı́smica (CHC). En [20], el
los pesos previamente definidos, midiendo la semejanza
resumen de texto se trató como un problema de programación
entre las oraciones si = (wi1 , wi2 , . . . , wim ) y sj =
booleana, que se resolvió con un algoritmo DE. Finalmente,
(wj1 , wj2 , . . . , wjm ) de la siguiente forma:
[21] consideró el resumen multidocumento basado en el enfo-
Pm
que de proximidad tópica, para el cual se propuso un algoritmo wik wjk
DE autoadaptativo. sim(si , sj ) = qP k=1 P , i, j = 1, 2, . . . , n.
m 2 m 2
La optimización multiobjetivo resuelve los problemas de k=1 wik · k=1 wjk

rendimiento de los modelos mono-objetivo, optimizando ca- (3)


da función objetivo sin ponderaciones. En el único trabajo
III-B. Formulación del problema de optimización
multiobjetivo encontrado ([6]), se propuso un modelo de
resumen extractivo multidocumento basado en la optimización Dado el conjunto D = {d1 , d2 , d3 , . . . , dN }, que contiene
discreta, implementando un algoritmo genético de ordenación N documentos. D también se puede representar como un
no-dominada II (NSGA-II) para la resolución del problema. conjunto que contiene las n oraciones de la colección como
Los principales objetivos incluidos en estos trabajos son la D = {s1 , s2 , . . . , sn }. El objetivo es generar un resumen
cobertura del contenido y la reducción de la redundancia. Sin D̄ ⊂ D teniendo en cuenta los siguientes tres aspectos:
embargo, también existen otros criterios como la relevancia, la Longitud: el resumen generado D̄ debe tener una longitud
coherencia y la significancia, pero no son tan comunes como fija L (con cierta tolerancia).
los anteriores. Además, todos los trabajos llevaron a cabo la Cobertura del contenido: el tema principal de la colec-
experimentación utilizando los conjuntos de datos de DUC y ción de documentos D debe ser cubierto en el resumen
las métricas de evaluación ROUGE. D̄ incluyendo las oraciones apropiadas.

652
XIII Congreso Español en Metaheurı́sticas y Algoritmos Evolutivos y Bioinspirados

Reducción de la redundancia: el resumen D̄ no debe ser soluciones encontradas hasta ahora; y las abejas exploradoras,
redundante, es decir, las oraciones existentes en D que que se encargan de la exploración de nuevas soluciones cuando
son similares entre sı́ no deben repetirse en el resumen algunas de las soluciones actuales se agotan (cuando no se
generado. pueden mejorar más).
Este problema de resumen de texto implica la optimización Este algoritmo ha sido aplicado con éxito para resolver
simultánea de la cobertura del contenido y de la reducción problemas del mundo real en múltiples contextos, ver p. ej.
de la redundancia. Sin embargo, estos dos objetivos son [24] y [25]. Además, algunos autores han propuesto nuevas
contradictorios entre sı́, por lo que un enfoque de optimización variantes con el fin de mejorarlo (p. ej. [26] y [27]).
multiobjetivo es la forma natural de abordar este problema. En esta sección se propone un algoritmo MOABC. Antes de
Sea xi ∈ {0, 1} una variable de decisión binaria que describirlo, se explica el preprocesamiento de los documentos
considera la presencia (xi = 1) o la ausencia (xi = 0) de de entrada y los operadores de mutación y reparación.
la oración si en el resumen generado D̄. De esta forma, la IV-A. Preprocesamiento de entrada
representación de la solución (el vector de decisión) es la
siguiente: x = (x1 , x2 , . . . , xn ). Antes de la ejecución del algoritmo, los documentos de D
El primer objetivo a optimizar, Φcobertura (x), se refiere al deben ser preprocesados siguiendo estos pasos:
criterio de la cobertura del contenido. Dada cada oración si ∈ 1. Segmentación. Las oraciones de D se extraen por sepa-
D̄, la cobertura del contenido se expresa en base a la similitud rado para marcar el comienzo y el fin de cada una.
entre si y el conjunto de oraciones de D (representado por o). 2. Tokenización. Las palabras (términos) de cada oración
Por lo tanto, la siguiente función debe ser maximizada: son separadas token a token. Los signos de puntuación,
n
interrogación, exclamación... se eliminan en este paso.
3. Eliminación de las palabras vacı́as. Las palabras vacı́as
X
Φcobertura (x) = sim(si , o) · xi . (4)
i=1
de cada oración son eliminadas. Estas palabras son
aquellas que carecen de significado principal, como
El segundo objetivo a optimizar, Φred redund (x), se refiere artı́culos, preposiciones, conjunciones, etc. La lista de
a la redundancia de la información. En este caso, se define una palabras vacı́as usada está proporcionada en el paquete
variable de decisión binaria yij relacionada con la presencia ROUGE, y contiene 598 palabras [28].
simultánea (yij = 1) o la ausencia (yij = 0) de las oraciones 4. Stemming del resto de palabras. Las raı́ces del resto de
si y sj en el resumen generado D̄. Para cada par de oraciones palabras son extraı́das mediante el algoritmo de Porter
si , sj ∈ D̄ la similitud sim(si , sj ) debe ser minimizada. Esto [29], el cual ha sido ampliamente utilizado, convir-
es equivalente a maximizar la reducción de la redundancia, tiéndose en el estándar para los métodos de análisis
esto es, a maximizar la siguiente función: lexicográfico y para la recuperación de información en
1 un amplio rango de lenguajes [30].
Φred redund (x) = Pn−1 Pn P .
( i=1 j=i+1 sim(si ,sj )·yij )· ni=1 xi
(5) IV-B. Operador de mutación
Finalmente, el problema de optimización multiobjetivo del La operación de mutación consiste en agregar o eliminar
resumen extractivo multidocumento se formula como: oraciones en el resumen correspondiente. Este operador se rige
por la probabilidad de mutación pm ∈ (0, 1). Para cada oración
máx Φ(x) = {Φcobertura (x), Φred redund (x)}, (6) en una solución x se genera un número aleatorio ri ∼ U (0, 1).
Si ri ≤ pm , la oración si es candidata para la mutación, y si
n se cumple la siguiente condición:
X
sujeto a L − ε ≤ li · xi ≤ L + ε, (7) 1X
n

i=1 sim(si , o) ≥ sim(sj , o), (9)


n j=1
donde li es la longitud de la oración si y ε es la tolerancia
para la restricción de longitud del resumen, definida como: si se incluye en el resumen. De lo contrario, se elimina. Esta
condición verifica si la similitud entre si y o es mayor o menor
ε= máx li − mı́n li . (8) que la media de la similitud de las oraciones de D.
i=1,2,...,n i=1,2,...,n

IV. ABC MULTIOBJETIVO IV-C. Operador de reparación


El algoritmo ABC (Artificial Bee Colony) es un algoritmo de El operador de reparación comprueba que el resumen generado
optimización basado en población que se fundamenta en el no viola la restricción de longitud definida en la Ecuación
comportamiento inteligente de un enjambre o colonia de abejas 7. Antes de finalizar cada ciclo, cualquier resumen generado
[23]. El ABC simula el comportamiento de las abejas de la puede violar dicha restricción, la cual es verificada en ambas
miel para resolver problemas de optimización. Principalmente, direcciones. Si el resumen generado tiene una longitud inferior
existen tres tipos de abejas: las abejas obreras, que mantienen a la restricción menos la tolerancia, el resumen es descartado,
las soluciones actualmente conocidas del problema; las abejas ya que el número de resúmenes generados en este caso
observadoras, que permiten la explotación de las mejores es muy bajo (se ha verificado experimentalmente que estos

653
XVIII Conferencia de la Asociación Española para la Inteligencia Artificial

resúmenes se producen 6 veces menos que los resúmenes con Algoritmo 1 Pseudocódigo del MOABC.
una longitud superior a la restricción más la tolerancia). Por 1: Archivo N DS ← ∅
otro lado, si el resumen generado tiene una longitud superior 2: inicializar colonia()
a la restricción más la tolerancia, este resumen sı́ es reparado 3: for ciclo = 1 to ciclosmax do
como se explica a continuación. 4: enviar abejas obreras()
Dado el resumen generado D∗ , que incumple la restricción 5: rank y crowding(coloniatam )
de longitud, la operación de reparación elimina de D∗ la o 6: calcular probabilidades()
las oraciones más redundantes (las que tienen un alto grado 7: enviar abejas observadoras()
de similitud entre ellas). Para esto se considera un umbral de 8: enviar abejas exploradoras()
similitud δ = 0,9 (una concordancia del 90 %, también usada 9: rank y crowding(2 ∗ coloniatam )
en [6]). Las siguientes condiciones son comprobadas para cada 10: exportar colonia(Archivo N DS)
par de oraciones si y sj : 11: end for

{si , sj ∈ D∗ } ∧ {i 6= j} ∧ sim(si , sj ) ≥ δ i, j = 1, 2, . . . , n.
(10) sus dominancias, mientras que el segundo da preferencia
Si estas condiciones se cumplen, entonces se usa el operador a las soluciones que aportan mayor diferenciación (a las
de reparación, eliminando la peor oración. Para ello, se calcula más diversas) [32]. Una vez aplicados estos operadores, la
el siguiente valor de calidad para si y sj : selección se basa en las probabilidades calculadas en la lı́nea
calidadsi = sim(si , o) + ((sim(osum , o) − sim(osum−si , o)) · 10, 6, asignando mayores probabilidades a las mejores soluciones.
(11) En la lı́nea 7 se envı́an las abejas observadoras, cuya tarea
donde sim(osum , o) es la similitud entre el centro del resumen es seleccionar su abeja obrera asignada, teniendo en cuenta
generado (incluida la oración si ) y el centro de la colección las probabilidades de selección, para tratar de mejorarla (el
de documentos o, y sim(osum−si , o) es la similitud entre operador de mutación también es aplicado en este paso).
el centro del resumen generado (excluyendo en este caso la En este punto del algoritmo, el tamaño de la colonia se
oración si ) y el centro de la colección de documentos o. duplica (2 ∗ coloniatam ). Las últimas abejas, las exploradoras
Este segundo término tiene un orden de magnitud mayor (se (lı́nea 8), se encargan de verificar las soluciones agotadas,
multiplica por 10), ya que mide la calidad del resumen cuando que son aquellas que no han mejorado más después de un
se elimina la oración si . Finalmente, la oración con la calidad determinado número de intentos. Estas abejas agotadas son
más baja es eliminada del resumen, y este operador es aplicado reemplazadas por exploradoras, que son nuevas soluciones
hasta que la restricción de longitud requerida se cumple. generadas aleatoriamente. Para finalizar un ciclo, el tamaño
de la colonia se reduce al tamaño original (coloniatam ),
IV-D. Principales pasos del algoritmo aplicando los operadores rank y crowding nuevamente (lı́nea
En esta subsección se propone una adaptación del algoritmo 9), y se reparan las soluciones (cuando es necesario) para su
ABC para optimización multiobjetivo. Mientras que la opti- almacenamiento en el archivo Archivo NDS (lı́nea 10).
mización mono-objetivo devuelve la mejor solución encon-
V. R ESULTADOS EXPERIMENTALES
trada, la optimización multiobjetivo devuelve un conjunto de
soluciones que son no dominadas entre sı́. Una solución es V-A. Conjuntos de datos
no dominada cuando ninguna de las funciones objetivo se Los conjuntos de datos utilizados para medir el rendimiento
puede mejorar sin que se degrade alguna de las otras [31]. han sido proporcionados por DUC (Document Understanding
El conjunto de soluciones no dominadas se conoce como Conferences), siendo un banco de pruebas abierto de referencia
conjunto de Pareto, y su representación gráfica como frente para la evaluación de resúmenes automáticos. Las comparacio-
de Pareto. nes se han realizado con los trabajos [5] y [6], donde se han
El algoritmo MOABC se resume con el pseudocódigo del utilizado 10 temas del conjunto de datos DUC2002 (del d061j
Algoritmo 1, que contiene los pasos principales del mismo. al d070f) [33].
En primer lugar, se inicializa el archivo de almacenamiento
Archivo NDS, que contiene las soluciones no dominadas (lı́nea V-B. Métricas de evaluación
1). Después, la colonia inicial se genera aleatoriamente (lı́nea El rendimiento del modelo se ha evaluado mediante el uso de
2), es decir, para cada solución (resumen), las oraciones de D las métricas ROUGE (Recall-Oriented Understudy for Gisting
se seleccionan de forma aleatoria. Los pasos de las lı́neas 3 a Evaluation) [34], que es considerada la métrica de evaluación
11 se repiten durante un número máximo de ciclos ciclosmax . oficial para los resúmenes por DUC. En este caso, las dos
En el paso de las abejas obreras (lı́nea 4) se aplica una variantes de ROUGE usadas son: ROUGE-2 y ROUGE-L.
mutación para mejorar la solución, que será seleccionada Además de la media (M), se han considerado otras dos
solo si domina a la original. En la lı́nea 5 se utilizan dos estadı́sticas para la medición de la dispersión: el rango y un
operadores para determinar cuáles son las mejores soluciones coeficiente de variación estadı́stico. El rango (R) se calcula
asociadas a las abejas obreras: rank y crowding. El primero como R = ROU GEmejor −ROU GEpeor . Sin embargo, no es
clasifica las soluciones en diferentes frentes de Pareto según adimensional, por lo que también se muestra una modificación

654
XIII Congreso Español en Metaheurı́sticas y Algoritmos Evolutivos y Bioinspirados

Tabla I
M EDIAS (M), RANGOS (R) Y COEFICIENTES DE VARIACI ÓN (CV) DE LOS VALORES ROUGE-2 Y ROUGE-L. L OS MEJORES APARECEN SOMBREADOS .

ROUGE-2 ROUGE-L
Tema DE adaptativo [5] NSGA-II [6] Enfoque propuesto DE adaptativo [5] NSGA-II [6] Enfoque propuesto
M R CV M R CV M R CV M R CV M R CV M R CV
d061j 0,266 0,290 109,02 0,306 0,263 85,95 0,365 0,093 25,43 0,542 0,208 38,38 0,554 0,205 37,00 0,590 0,056 9,46
d062j 0,188 0,275 146,28 0,200 0,422 211,00 0,342 0,023 6,60 0,473 0,239 50,53 0,481 0,306 63,62 0,536 0,017 3,26
d063j 0,245 0,208 84,90 0,275 0,279 101,45 0,272 0,005 1,84 0,493 0,156 31,64 0,528 0,171 32,39 0,509 0,050 9,74
d064j 0,194 0,280 144,33 0,233 0,356 152,79 0,308 0,009 2,83 0,462 0,235 50,87 0,488 0,287 58,81 0,495 0,011 2,19
d065j 0,144 0,209 145,14 0,182 0,208 114,29 0,198 0,026 13,32 0,431 0,141 32,71 0,457 0,174 38,07 0,464 0,057 12,29
d066j 0,201 0,257 127,86 0,181 0,245 135,36 0,290 0,019 6,54 0,455 0,196 43,08 0,441 0,149 33,79 0,519 0,007 1,36
d067f 0,239 0,235 98,33 0,260 0,298 114,62 0,356 0,005 1,39 0,509 0,232 45,58 0,529 0,244 46,12 0,580 0,012 2,15
d068f 0,491 0,384 78,21 0,496 0,281 56,65 0,444 0,084 18,83 0,666 0,226 33,93 0,626 0,226 36,10 0,639 0,071 11,09
d069f 0,184 0,166 90,22 0,232 0,239 103,02 0,240 0,008 3,15 0,454 0,135 29,74 0,476 0,191 40,13 0,554 0,010 1,81
d070f 0,224 0,260 116,07 0,262 0,215 82,03 0,305 0,002 0,76 0,496 0,173 34,88 0,513 0,158 30,80 0,515 0,005 0,90
Media 0,238 0,256 114,03 0,263 0,281 115,72 0,312 0,027 8,07 0,498 0,194 39,13 0,509 0,211 41,68 0,540 0,030 5,43

del coeficiente de variación tradicional de Pearson (CV), que Tabla II


implica la relación entre el rango y la media. Puede expresarse C OMPARACI ÓN DE LA MEDIA (M), DEL RANGO (R) Y DEL COEFICIENTE
DE VARIACI ÓN (CV) ENTRE EL ENFOQUE PROPUESTO Y LOS OTROS
en términos de porcentaje como: ENFOQUES .

R
CV = · 100. (12) Mejora del enfoque propuesto ( %)
ROU GEmedia Enfoque ROUGE-2 ROUGE-L
V-C. Configuración de los experimentos M R CV M R CV
DE adaptativo [5] 31,09 848,15 1313,01 8,43 546,67 620,63
Los parámetros del MOABC se han elegido para realizar com- NSGA-II [6] 18,63 940,74 1333,95 6,09 603,33 667,59
paraciones justas con los resultados de los enfoques propuestos
en la literatura cientı́fica ([5] y [6]). Estos son: tamaño de
colonia, coloniatam = 50; número de ciclos, ciclosmax =
1000; probabilidad de mutación, pm = 0, 1; y el número de 31,09 %, y la del ROUGE-L en un 8,43 %. En segundo lugar,
repeticiones/ejecuciones independientes, repsmax = 20. el enfoque propuesto también supera al presentado en [6]. En
V-D. Resultados este caso, el algoritmo es un NSGA-II multiobjetivo. La media
del ROUGE-2 tiene una mejora del 18,63 %, y la del ROUGE-
Los resultados del MOABC son comparados con [6] (el único L del 6,09 %. Finalmente, los rangos y CV muestran que los
enfoque multiobjetivo existente en la literatura cientı́fica) y resultados del enfoque propuesto son mucho más robustos.
con [5] (el mejor enfoque mono-objetivo). La Tabla I presenta Para el ROUGE-2, el enfoque propuesto mejora la media de
la media, el rango y el CV de los valores de ROUGE-2 y los CV en más de un 1300 % (13 veces más robusto), y para el
ROUGE-L para cada tema y los valores medios de todos los ROUGE-L mejoran en más de un 600 % (6 veces más robusto).
temas para los tres enfoques comparados. Esto significa que las soluciones del MOABC son más estables
En los resultados obtenidos en la Tabla I se puede observar que las obtenidas en los otros dos enfoques.
que el enfoque propuesto supera a los otros dos, mejorando
a [5] en 9 de los 10 temas y a [6] en 8 de 10 para el
ROUGE-2, y en 9 de los 10 temas a ambos para el ROUGE-L. VI. C ONCLUSIONES Y TRABAJO FUTURO
Además, los rangos y los CV muestran que los resultados del
modelo propuesto son muy robustos. Considerando la media El problema de resumen multidocumento requiere la opti-
de los diez temas, para el ROUGE-2 el enfoque propuesto mización de más de una función objetivo, por lo que es
produce resultados con un CV medio de 8,07 %, mientras que necesario aplicar enfoques de optimización multiobjetivo. Por
en los otros dos enfoques son de 114,03 % y 115,72 %. Para primera vez, un enfoque basado en el algoritmo MOABC ha
el ROUGE-L, mientras que el CV está alrededor del 40 % en sido diseñado e implementado para este caso. Los resultados
los otros enfoques, en el modelo propuesto el valor es solo obtenidos no solo han mejorado en los valores ROUGE-2
del 5,43 %. Finalmente, la Tabla II muestra las mejoras en (31,09 % y 18,63 % mejor) y en ROUGE-L (8,43 % y 6,09 %
términos promedio del enfoque propuesto con respecto a los mejor), sino que también han mostrado una menor dispersión
otros enfoques. (alrededor de 1300 % y 600 % menos, es decir, alrededor de
Los resultados de la Tabla II dan lugar a las siguientes 13 y 6 veces más robusto) y, por lo tanto, la prueba de que
observaciones. En primer lugar, el enfoque propuesto mejora el enfoque propuesto es estadı́sticamente más sólido que los
al presentado en [5], donde el algoritmo es un DE adaptativo enfoques comparables publicados.
mono-objetivo. La media del ROUGE-2 es mejorada en un Como lı́nea de investigación futura, el enfoque se adaptará

655
XVIII Conferencia de la Asociación Española para la Inteligencia Artificial

para su aplicación en el software NeuroK 1 , que es una [12] R. M. Alguliev, R. M. Aliguliyev y C. A. Mehdiyev, “An optimization
plataforma de e-learning basada en la neurodidáctica [35]. El model and DPSO-EDA for document summarization,” International
Journal of Information Technology and Computer Science (IJITCS), vol.
algoritmo generará resúmenes de los contenidos de los estu- 3, no. 5, 2011, pp. 59–68.
diantes (mensajes, comentarios, observaciones o valoraciones), [13] R. M. Alguliev, R. M. Aliguliyev y N. R. Isazade, “Formulation of
en unidades de aprendizaje o en actividades concretas, lo que document summarization as a 0–1 nonlinear programming problem,”
Computers & Industrial Engineering, vol. 64, no. 1, 2013, pp. 94–102.
será útil para los profesores de los cursos para muchos propósi- [14] R. M. Alguliev, R. M. Aliguliyev y M. S. Hajirahimova, “Quadratic
tos, incluida la evaluación automática para las calificaciones. Boolean programming model and binary differential evolution algorithm
Otra lı́nea de investigación interesante es el análisis del for text summarization,” Problems of Information Technology, vol. 3, no.
2, 2012, pp. 20–29.
tiempo de CPU del algoritmo, con vistas a una posible pa- [15] R. M. Alguliev, R. M. Aliguliyev y M. S. Hajirahimova, “GenDocSum+
ralelización para mejorar el tiempo de ejecución. Las técnicas MCLR: Generic document summarization based on maximum coverage
basadas en programación paralela con OpenMP podrı́an ser and less redundancy,” Expert Systems with Applications, vol. 39, no.
16, 2012, pp. 12460–12473.
muy útiles, ya que este enfoque permite explotar el paralelismo [16] R. M. Alguliev, R. M. Aliguliyev y N. R. Isazade, “CDDS: Constraint-
existente en las arquitecturas multinúcleo actuales. driven document summarization models,” Expert Systems with Appli-
cations, vol. 40, no. 2, 2013, pp. 458–465.
[17] R. M. Alguliev, R. M. Aliguliyev y N. R. Isazade, “Multiple documents
AGRADECIMIENTOS summarization based on evolutionary optimization algorithm,” Expert
Esta investigación ha sido apoyada por el Ministerio de Systems with Applications, vol. 40, no. 5, 2013, pp. 1675–1689.
[18] R. M. Alguliev, R. M. Aliguliyev y C. A. Mehdiyev, “An optimization
Economı́a y Competitividad (Centro para el Desarrollo Tec- approach to automatic generic document summarization,” Computational
nológico Industrial, contrato IDI-20161039; Agencia Estatal Intelligence, vol. 29, no. 1, 2013, pp. 129–155.
de Investigación, proyectos TIN2016-76259-P y MTM2017- [19] M. Mendoza, C. Cobos, E. Leon, M. Lozano, F. Rodriguez y E. Herrera-
Viedma, “A new memetic algorithm for multi-document summarization
86875-C3-2-R), Junta de Extremadura (contrato AA-16-0017- based on CHC algorithm and greedy search,” En Mexican International
1, y proyectos GR18108 y GR18090), Cátedra ASPgems y Conference on Artificial Intelligence, Springer, 2014, pp. 125–138.
Unión Europea (Fondo Europeo de Desarrollo Regional). [20] R. M. Alguliev, R. M. Aliguliyev y N. R. Isazade, “An unsupervised
approach to generating generic summaries of documents,” Applied Soft
Computing, vol. 34, 2015, pp. 236–250.
R EFERENCIAS [21] K. Umam, F. W. Putro, G. Q. O. Pratamasunu, A. Z. Arifin y D. Pur-
witasari, “Coverage, Diversity, and Coherence Optimization for Multi-
[1] W. Fan y A. Bifet, “Mining big data: current status, and forecast to the Document Summarization,” Jurnal Ilmu Komputer dan Informasi, vol.
future,” ACM SIGKDD Explorations Newsletter, vol. 14, no. 2, 2013, 8, no. 1, 2015, pp. 1–10.
pp. 1–5. [22] G. Salton y C. Buckley, “Term-weighting approaches in automatic text
[2] H. Hashimi, A. Hafez y H. Mathkour, “Selection criteria for text mining retrieval,” Information Processing & Management, vol. 24, no. 5, 1988,
approaches,” Computers in Human Behavior, vol. 51, 2015, pp. 729–733. pp. 513–523.
[3] D. M. Zajic, B. J. Dorr y J. Lin, “Single-document and multi-document [23] D. Karaboga, “An idea based on honey bee swarm for numerical
summarization techniques for email threads using sentence compres- optimization,” Tech. rep., Technical Report-TR06. Erciyes University,
sion,” Information Processing & Management, vol. 44, no. 4, 2008, pp. Engineering Faculty, Computer Engineering Department, 2005.
1600–1610. [24] D. Karaboga y B. Basturk, “A powerful and efficient algorithm for
[4] X. Wan, “An exploration of document impact on graph-based multi- numerical function optimization: artificial bee colony (ABC) algorithm,”
document summarization,” En Proceedings of the Conference on Empi- Journal of Global Optimization, vol. 39, no. 3, 2007, pp. 459–471.
rical Methods in Natural Language Processing, Association for Compu- [25] D. Karaboga, B. Gorkemli, C. Ozturk y N. Karaboga, “A comprehen-
tational Linguistics, 2008, pp. 755–762. sive survey: artificial bee colony (ABC) algorithm and applications,”
[5] R. M. Alguliev, R. M. Aliguliyev y C. A. Mehdiyev, “Sentence selection Artificial Intelligence Review, vol. 42, no. 1, 2014, pp. 21–57.
for generic document summarization using an adaptive differential [26] M. S. Kıran y O. Fındık, “A directed artificial bee colony algorithm,”
evolution algorithm,” Swarm and Evolutionary Computation, vol. 1, no. Applied Soft Computing, vol. 26, 2015, pp. 454–462.
4, 2011, pp. 213–222. [27] M. S. Kıran, H. Hakli, M. Gunduz y H. Uguz, “Artificial bee colony
[6] H. H. Saleh, N. J. Kadhim y B. A. Attea, “A Genetic Based Optimiza- algorithm with variable search strategy for continuous optimization,”
tion Model for Extractive Multi-Document Text Summarization,” Iraqi Information Sciences 300, 2015, pp. 140–157.
Journal of Science, vol. 56, no. 2, 2015 pp. 1489–1498. [28] ROUGE Summary Evaluation Package, http://www.berouge.com/. [Ac-
[7] L. Huang, Y. He, F. Wei y W. Li, “Modeling document summarization cedido 20-Julio-2017].
as multi-objective optimization,” En Intelligent Information Technology [29] Porter stemming algorithm, http://www.tartarus.org/martin/
and Security Informatics (IITSI), 2010 Third International Symposium, PorterStemmer/. [Accedido 14-Junio-2018].
IEEE, 2010, pp. 382–386. [30] P. Willett, “The Porter stemming algorithm: then and now,” Program,
[8] R. M. Aliguliyev, “Clustering Techniques and Discrete Particle Swarm vol. 40, no. 3, 2006, pp. 219–223.
Optimization Algorithm for Multi-Document Summarization,” Compu- [31] C. C. Coello, C. Dhaenens y L. Jourdan, “Advances in multi-objective
tational Intelligence, vol. 26, no. 4, 2010, pp. 420–448. nature inspired computing,” SCI, vol. 272, Springer, 2010.
[9] R. M. Alguliev, R. M. Aliguliyev, M. S. Hajirahimova y C. A. Mehdiyev, [32] K. Deb, A. Pratap, S. Agarwal y T. Meyarivan, “A fast and elitist
“MCMR: Maximum coverage and minimum redundant text summariza- multiobjective genetic algorithm: NSGA-II,” IEEE Transactions on
tion model,” Expert Systems with Applications, vol. 38, no. 12, 2011, Evolutionary Computation, vol. 6, no. 2, 2002, pp. 182–197.
pp. 14514–14522. [33] Document Understanding Conference, http://duc.nist.gov. [Accedido 14-
[10] R. M. Alguliev, R. M. Aliguliyev y C. A. Mehdiyev, “pSum-Sade: Junio-2018].
a modified p-median problem and self-adaptive differential evolution [34] C.-Y. Lin, “Rouge: A package for automatic evaluation of summaries,”
algorithm for text summarization,” Applied Computational Intelligence En Text summarization branches out: Proceedings of the ACL-04
and Soft Computing, vol. 2011, 2011, pp. 1–13. workshop, vol. 8, Barcelona, Spain, 2004, pp. 74–81.
[11] R. M. Alguliev, R. M. Aliguliyev y N. R. Isazade, “DESAMC+ DocSum: [35] F. Calle-Alonso, A. Cuenca-Guevara, D. de la Mata Lara, J. M. Sanchez-
Differential evolution with self-adaptive mutation and crossover para- Gomez, M. A. Vega-Rodrı́guez y C. J. Perez Sanchez, “NeuroK: A
meters for multi-document summarization,” Knowledge-Based Systems, Collaborative e-Learning Platform based on Pedagogical Principles from
vol. 36, 2012, pp. 21–38. Neuroscience,” En Proceedings of the 9th International Conference on
Computer Supported Education (CSEDU 2017), vol. 1, Science and
1 https://neurok.es/ Technology Publications, 2017, pp. 550–555.

656
XIII Congreso Español en Metaheurı́sticas y Algoritmos Evolutivos y Bioinspirados

Algoritmo Multiobjetivo de Colonia de Abejas


Artificiales aplicado al Problema de Orientación
Rodrigo Martı́n-Moreno Miguel A. Vega-Rodrı́guez
Depto. Tecnologı́a de Computadores y Comunicaciones Depto. Tecnologı́a de Computadores y Comunicaciones
Universidad de Extremadura Universidad de Extremadura
Cáceres, España Cáceres, España
rmartinky@alumnos.unex.es mavega@unex.es

Resumen—Hemos desarrollado un nuevo algoritmo para la el algoritmo MOABC se aplica en la resolución de problemas
resolución de problemas de orientación multiobjetivo, que tienen de orientación multiobjetivo. Como veremos, los resultados
aplicación directa en el cálculo de rutas óptimas, logı́stica, o bien obtenidos son muy competitivos al compararlos con los de
el diseño de rutas turı́sticas, nuestra motivación principal. Los
turistas priorizan según sus gustos el visitar puntos de interés, otros algoritmos multiobjetivo (P-ACO y P-VNS) del estado
los cuales se pueden categorizar (p. ej. culturales u ocio), por lo del arte en este campo. Los experimentos han sido realizados
que es necesaria la utilización de sistemas expertos multiobjetivo. en instancias de test e instancias del mundo real (un total de
Para conseguir las mejores soluciones de Pareto, hemos adaptado 216 instancias agrupadas en 10 conjuntos), y hemos usado tres
el algoritmo de colonia de abejas artificiales al contexto multi- indicadores de calidad para comparar los resultados.
objetivo. El rendimiento del algoritmo se ha comparado con dos
algoritmos usados previamente en la literatura de los problemas Este artı́culo se estructura de la siguiente manera. La sección
de orientación multiobjetivo (P-ACO y P-VNS), y los resultados II introduce al lector en la investigación desarrollada en este
obtenidos indican que este nuevo algoritmo es acertado para campo. La sección III presenta la definición formal del pro-
resolver problemas de orientación multiobjetivo. blema y su formulación matemática. La sección IV desgrana
Palabras clave—Algoritmo de colonia de abejas artificiales, Op- nuestra estrategia multiobjetivo para resolver el problema. La
timización multiobjetivo, Problema de orientación, Inteligencia
de enjambre, Computación evolutiva. sección V muestra los resultados obtenidos y compara los
resultados de nuestro algoritmo con los de otros algoritmos
previamente publicados. Por último, la sección VI culmina este
I. I NTRODUCCI ÓN
artı́culo y muestra también posibles lı́neas de trabajo futuras.
Existe una gran variedad de sistemas de apoyo a la toma
de decisiones, usados para diferentes propósitos como mar- II. T RABAJO R ELACIONADO
keting, finanzas, logı́stica o recursos humanos, por ejemplo. La optimización multiobjetivo ha sido un campo importante,
Sin embargo, existen pocos sistemas para ayudar a la gente con bastantes trabajos de investigación, en las dos últimas
a diseñar rutas turı́sticas que encajen en sus preferencias, décadas. Dentro de ella, la resolución de MOOP es una área de
más bien se les ofrece un conjunto de rutas prefijadas poco gran aplicabilidad, aunque con poca actividad de investigación.
personalizables. Cuando los visitantes planean una visita a Hemos basado nuestro trabajo en el algoritmo ABC y
un destino, priorizan qué lugares o puntos de interés (POIs) lo hemos adaptado al contexto multiobjetivo. La elección
merecen ser visitados, teniendo en cuenta su presupuesto, del ABC se debe a que ha sido extensamente estudiado y
tiempo e interés y decidiendo su orden en la ruta. Por ello, aplicado para resolver problemas reales en múltiples campos
un sistema de apoyo a la toma de decisiones, que ayude a [3], incluyendo optimización mono-objetivo (p. ej. [4], [5] y
los visitantes en este proceso, puede ser muy interesante. En [6]) y optimización multiobjetivo (p. ej. [7], [8] y [9])
todo caso, la decisión final recaerá siempre sobre el visitante, Por otro lado, OP fue definido por [1], y algunos autores lo
ya que el sistema solo ofrecerá las mejores soluciones para han considerado como un tipo de TSP (Problema del Viajante)
sus requerimientos, pero no contemplará la parte emocional con beneficios (ver [10]) o TSP selectivo. En OP, cada vértice
de planear una visita a un destino. tiene asociado algún beneficio, y la finalidad es visitar un
El hecho de crear rutas que conecten POIs se define como un grupo de vértices que maximice la suma de los beneficios,
Problema de Orientación (OP) [1]. En este caso, nos centramos mientras se satisfaga la restricción de coste/longitud del tour.
en el Problema de Orientación MultiObjetivo (MOOP), donde Dos estudios completos del estado del arte del problema de
existen varias categorı́as para cada POI (p. ej.: cultural u orientación se pueden encontrar en [11] y [12].
ocio) y cada uno de ellos tiene diferentes beneficios para cada Relacionado con OP está el problema de orientación de
categorı́a. Hemos desarrollado un algoritmo MultiObjetivo de equipo o TOP (ver [13] y [14]), donde el problema se extiende
Colonia de Abejas Artificiales (MOABC), basándonos en el a múltiples tours.
algoritmo mono-objetivo ABC propuesto por [2], para resolver Con respecto a MOOP, el problema abordado en este
el MOOP de una manera competitiva. Es la primera vez que trabajo, muy pocas propuestas se pueden encontrar en la

657
XVIII Conferencia de la Asociación Española para la Inteligencia Artificial

literatura. Dentro del problema de orientación biobjetivo po- usan en todos los tours. La ecuación 7 garantiza que el coste
demos destacar [15] que usó el algoritmo P-ACO (Pareto Ant del tour no es superior al lı́mite establecido Cmax . En este
Colony Optimization) y el algoritmo P-VNS (Pareto Variable caso, resolveremos el problema de orientación biobjetivo, por
Neighborhood Search) combinados con PR (Path Relinking), lo que K = 2.
[16] que usó un algoritmo evolutivo también combinado con
IV. S OLUCI ÓN . N UEVO A LGORITMO M ULTIOBJETIVO
PR y [17] que utilizó GRASP combinado con PR.
En [18] se demostró que OP es NP-hard. Por ello, es necesario
III. D EFINICI ÓN DEL P ROBLEMA MOOP aplicar técnicas metaheurı́sticas en la resolución del problema
Puede modelarse como un grafo dirigido G = (V, A) con un de orientación multiobjetivo.
conjunto de vértices, V = {v0 , v1 , v2 , ..., vn+1 }, y un conjunto En esta sección explicamos el algoritmo MOABC que
de aristas, A = {(vi , vj ) : vi , vj ∈ V ∧ vi 6= vj ∧ vi 6= vn+1 ∧ hemos diseñado y desarrollado. Inicialmente el algoritmo
vj 6= v0 }. Cada vértice vi ∈ V \{v0 , vn+1 } tiene asociados K Colonia de Abejas Artificiales fue propuesto por [2] en el con-
beneficios bik (k = 1, ..., K). Los vértices inicial y final, v0 texto mono-objetivo. Nosotros lo hemos adaptado al contexto
y vn+1 , no tienen beneficios asociados. Además, cada arista multiobjetivo y particularmente a la resolución del problema
(vi , vj ) ∈ A tiene un coste cij que puede ser interpretado como de orientación multiobjetivo. Modelamos cada solución en
distancia, dinero o tiempo invertido para ir desde vi hasta vj . MOOP como una lista de puntos (aquellos que se han incluido
En todas las instancias usadas en este trabajo, v0 y vn+1 en el tour correspondiente), lo cual es la manera más natural
representan el mismo punto, por lo tanto, entendemos que para representar una solución para este problema.
cada solución es un “tour” en lugar de “ruta”. La finalidad del IV-A. Optimización Multiobjetivo
problema de orientación multiobjetivo es encontrar los mejores
Debido a la naturaleza multiobjetivo del problema a resolver,
tours (que maximicen los beneficios para todos los objetivos)
es muy difı́cil elegir una solución óptima donde todos los obje-
desde v0 hasta vn+1 , cumpliendo la restricción marcada de
tivos se maximicen. Sin embargo, si restringimos a soluciones
coste/longitud Cmax .
no dominadas, la elección se limitará a un conjunto razonable
Podemos definir matemáticamente el problema como:
de soluciones candidatas. Las siguientes definiciones ayudarán
a clarificar este aspecto.
maximizar F (x) = (f1 (x), ..., fK (x)), (1)
Una solución x domina a una solución x′ si x no es peor que

X
fk = (bik · yi ) (k = 1, ..., K), (2) x en ninguna de las funciones objetivo, y es mejor en al menos
vi ∈V \{v0 ,vn+1 } una de las funciones objetivo. Formalmente: para maximizar
F (x) = (f1 (x), ..., fK (x)), x domina x′ si fk (x) ≥ fk (x′ )
donde yi , una variable binaria, toma valor 1 cuando vi es
para todo k = 1, ..., K, y fk (x) > fk (x′ ) para al menos un k.
visitado, y 0 en caso contrario. Además, hay que tener en
Si esto ocurre, escribimos x ≻ x′ .
cuenta que:
Si ninguna solución domina a la solución x∗ , decimos que

X
aij = yj (vj ∈ V \{v0 }), (3) x es no dominada o Pareto eficiente. En este caso, decimos
vi ∈V \{vj } que z ∗ = F (x∗ ) = (f1 (x∗ ), ..., fK (x∗ )) es un vector no
X dominado. El conjunto de todos los vectores no dominados es
aij = yi (vi ∈ V \{vn+1 }), (4) llamado frente de Pareto. La relación ≻ puede ser extendida
vj ∈V \{vi } desde el espacio de soluciones al espacio de objetivos. En ese
X caso, dados dos vectores z = (z1 , ..., zK ) y z ′ = (z1′ , ..., zK

),
aij ≤ |S| − 1 (S ⊆ V ∧ S 6= ∅), (5) ′ ′
escribimos z ≻ z si zk ≥ zk para todo k = 1, ..., K y zk > zk′
{vi ,vj }∈S
en al menos un k.
y0 = yn+1 = 1, (6)
X IV-B. MOABC
cij · aij ≤ Cmax , (7) El algoritmo ABC es un algoritmo metaheurı́stico, basado
(vi ,vj )∈A en inteligencia de enjambre, que se inspira en el compor-
  tamiento alimenticio de las colonias de abejas melı́feras y
aij ∈ {0, 1} (vi , vj ) ∈ A , (8) se compone de tres componentes principales: abejas obreras,
abejas observadoras y abejas exploradoras. Las abejas obreras
yi ∈ {0, 1} (vi ∈ V ). (9)
buscan fuentes de alimento (soluciones). Existen otros dos
La variable binaria aij toma valor 1 cuando (vi , vj ) ∈ A es comportamientos interesantes que se requieren para la auto-
usado, y 0 en caso contrario. La ecuación 1 indica que para organización y la inteligencia de enjambre: enviar nuevas
resolver MOOP hay que maximizar las diferentes funciones abejas (abejas observadoras) hacia las fuentes de alimento pro-
objetivo. La ecuación 2 define cada función objetivo como la metedoras (feedback positivo) y abandonar fuentes de alimento
suma de sus beneficios correspondientes. Las ecuaciones 3 y agotadas (feedback negativo), generando abejas exploradoras.
4 implican que para cada vértice visitado solo existe una arista Como hemos mencionado anteriormente, hemos adaptado
entrante y una arista saliente. La ecuación 5 impide subtours. el algoritmo ABC original al contexto multiobjetivo y en par-
La ecuación 6 implica que los puntos de comienzo y fin se ticular a la resolución de MOOP. Un pseudocódigo de nuestro

658
XIII Congreso Español en Metaheurı́sticas y Algoritmos Evolutivos y Bioinspirados

algoritmo MOABC se muestra en algoritmo 1. Las siguientes compara con la solución actual y si la primera domina a la
subsecciones detallan todas las partes de este algoritmo. segunda, entonces se reemplaza la solución actual para la abeja
obrera.
Algoritmo 1 Colonia de Abejas Artificiales Multiobjetivo
IV-E. Calcular Cantidad de Néctar
entrada: Tmax (tiempo máximo de ejecución), T P (tamaño
de la población) y limite (criterio de abandono) Usamos dos operadores multiobjetivo para determinar cuáles
salida: F ichero SN D (fichero con las soluciones no domi- son las mejores soluciones asociadas a las abejas obreras:
nadas) rank y crowding. El primero clasifica las soluciones en los
1: t ← 0; F ichero SN D ← ∅ diferentes frentes de Pareto acorde a sus relaciones de domi-
2: IniciarFuentesAlimento(T P ) ⊲ ver IV-C nancia, mientras que el segundo tiene en cuenta la distancia
3: while t < Tmax do de amontonamiento, que consigue variedad en las soluciones.
4: FaseAbejasObreras(T P ) ⊲ ver IV-D Una explicación más detallada de estos dos operadores puede
5: CalcularCantidadNectar(T P ) ⊲ ver IV-E encontrarse en [20]. Una vez calculados, los combinamos para
6: FaseAbejasObservadoras(T P ) ⊲ ver IV-F cada solución en un único valor (llamado fitness multiobjetivo
7: FaseAbejasExploradoras(T P , limite) ⊲ ver IV-G o M Of itness), según la ecuación 11. M Of itness es un
8: GuardarSND(F ichero SN D) ⊲ ver IV-H valor importante porque un mayor fitness multiobjetivo im-
9: end while plicará una mayor probabilidad de selección, fundamental en
la siguiente subsección.

IV-C. Iniciar Fuentes de Alimento 1


M Of itness(x) = 1 . (11)
Todas las soluciones (fuentes de alimento) de la población 2rank(x) + 1+crowding(x)
(T P : tamaño de la población) se generan aleatoriamente por
las abejas obreras siguiendo estos pasos: primero calculamos IV-F. Fase Abejas Observadoras
los 20 mejores movimientos desde cada punto a cualquier Las abejas obreras comparten la información del fitness de
otro. Este cálculo solo se realiza una vez y se usa cuando sea sus soluciones con las abejas observadoras, y estas eligen
necesario. Los mejores movimientos son calculados siguiendo sus soluciones de manera probabilı́stica basándose en las
la ecuación 10. Para ir desde i a j se calcula el ratioij , donde probabilidades calculadas en base a los valores M Of itness
bj1 y bj2 son los beneficios del punto j y cij es el coste para (ver ecuación 11). Aplicamos el método de selección de ruleta
ir desde i hasta j. Por lo tanto, la ecuación 10 relaciona los basado en fitness propuesto por [21]. Por ello, las mejores solu-
beneficios con el coste. Cabe destacar que los valores bj1 , bj2 ciones reclutarán más abejas observadoras (feedback positivo).
y cij son normalizados para evitar sesgos. Los movimientos La probabilidad p(xi ) por la que una solución xi es elegida
con mejor ratio se consideran mejores movimientos. por una abeja observadora se calcula con la ecuación 12.

(bj1 + bj2 ) M Of itness(xi )


ratioij = . (10) p(xi ) = PT P . (12)
cij m
m=1 M Of itness(x )
Después, comenzando por el punto inicial, seleccionamos Después de que una solución xi sea probabilı́sticamente
un movimiento de la lista de 20 movimientos. Este proceso elegida por una abeja observadora, se genera una solución
se repite hasta que no se pueden añadir más puntos por la vecina usando dos operadores: intercambio de vértices y
restricción de coste Cmax . Indicar que todos los tours finalizan acortamiento. Intercambio de vértices intenta reemplazar cada
en el punto de fin y que el resto de restricciones son también punto existente del tour por un punto no visitado. En cada
comprobadas durante la generación aleatoria de una solución. posición, el punto no visitado se selecciona a través de los
mejores 10 puntos (de acuerdo a la ecuación 10) no visitados
IV-D. Fase Abejas Obreras
para esa posición. Después, se usa la misma operación de
Las abejas obreras buscan mejores soluciones, dentro de sus acortamiento de la subsección IV-D para mejorar la solución.
vecindarios. Esto consiste en encontrar una solución vecina y Tras generar la solución vecina, se compara con la solución
evaluar su calidad. Para obtener soluciones vecinas para las original y si la primera no es dominada por la segunda,
abejas obreras, usamos dos operadores: acortamiento e inser- entonces se reemplaza la solución original para la abeja
ción. El acortamiento intenta reordenar los vértices, dentro de observadora.
un tour, para minimizar su coste. En este caso usamos el ope-
rador de acortamiento 2-opt propuesto por [19]. La inserción IV-G. Fase Abejas Exploradoras
comprueba si es factible insertar un nuevo punto después de Las abejas obreras y observadoras cuyas soluciones no pueden
realizar el acortamiento. Para cada posible inserción, se elige ser mejoradas después de un número de intentos, indicado por
de manera aleatoria uno de los mejores 10 puntos candidatos un parámetro de configuración del algoritmo MOABC llamado
(según ecuación 10) de los puntos no visitados. Cualquier limite, se convierten en abejas exploradoras y sus soluciones
posible inserción se realiza teniendo en cuenta la restricción son abandonadas. Destacar que MOABC utiliza más abejas
de coste Cmax . Después de generar la solución vecina, se exploradoras que el algoritmo ABC original, donde se utiliza

659
XVIII Conferencia de la Asociación Española para la Inteligencia Artificial

como mucho una por iteración [22]. En MOABC todas las 2 p273) con 20 instancias cada uno y con una restricción de
abejas obreras y observadoras con intentos >= limite se distancia máxima de tour (Cmax ) entre 1 y 20 kilómetros; y
convierten en exploradoras. En todo caso, las comparaciones 559, 562 y 2143 vértices (2 p559, 2 p562 y 2 p2143) con
con P-ACO y P-VNS (subsección V-C) son justas ya que 29 instancias y una Cmax desde 10 hasta 150 kilómetros.
se basan en la utilización del mismo tiempo de ejecución. Todas estas se proporcionan con una matriz de distancias entre
Las abejas exploradoras buscan de manera aleatoria nuevas vértices. Además, para estos 5 grupos de instancias se usa una
soluciones (mejorando la exploración del algoritmo). Por distancia de servicio entre vértices de 0,5 kilómetros que se
lo tanto, aquellas soluciones que no pueden ser mejoradas puede entender como el tiempo necesario para visitar un POI.
por explotación, son abandonadas (feedback negativo). La
nueva solución asociada a la abeja exploradora se genera V-B. Indicadores o Métricas de Calidad
aleatoriamente de la misma manera que en la subsección
IV-C. Posteriormente, la abeja exploradora intenta mejorar la Hemos usado el software disponible en http://www.tik.ee.ethz.
solución aplicando los tres operadores vistos anteriormente: ch/sop/pisa/?page=assessment.php para calcular los indicado-
inserción, intercambio y acortamiento. res, según las instrucciones proporcionadas por [24]. Todos los
indicadores usados en este trabajo han sido calculados usando
IV-H. Guardar Soluciones No Dominadas valores normalizados de las funciones objetivo. Para algunos
En cada iteración, las soluciones no dominadas se guardan indicadores unarios se necesita un conjunto de referencia, por
en un fichero para preservarlas mientras se generan nuevas lo que hemos generado un conjunto de referencia con las
soluciones. El operador utilizado para calcular las soluciones soluciones no dominadas de todas las ejecuciones de los algo-
no dominadas es el rank, el cual clasifica las soluciones en ritmos a comparar (MOABC, P-ACO y P-VNS). Hemos usado
diferentes frentes de Pareto de acuerdo a sus relaciones de las soluciones proporcionadas por [15] para cada instancia
dominancia. Además se usa el operador crowding que junto calculada por los algoritmos P-ACO y P-VNS, y realizado
con el operador rank es usado para ordenar las soluciones una comparación de acuerdo a varios indicadores o métricas
actuales. Una explicación más detallada de estos operadores utilizadas habitualmente en la literatura de optimización mul-
puede encontrarse en [20]. Después, las mejores T P (tamaño tiobjetivo: hipervolumen, épsilon unario y R3. Cada uno de
de la población) soluciones son tomadas por las abejas obreras estos tres indicadores se basa en diferentes propiedades, lo que
para la siguiente iteración y las soluciones no dominadas (con permite una evaluación completa y balanceada que incrementa
rank = 0) se guardan en Fichero SND. su fiabilidad. Puede encontrarse información detallada sobre
los indicadores hipervolumen, épsilon unario y R3 en [25],
V. R ESULTADOS [26] y [27] respectivamente.
Hemos implementado nuestro algoritmo MOABC en C++, con
el compilador GNU g++ 4.8.4 en Ubuntu Server 14.04 LTS 64 V-C. Comparación entre Algoritmos
bits. Todas las ejecuciones se han realizado en un procesador
Intel Pentium 4 D de 3,2 GHz y 1 GB de RAM, un entorno En esta subsección, comparamos los resultados obtenidos por
computacional muy similar al usado para los algoritmos P- MOABC con los resultados de los algoritmos P-ACO y P-
ACO y P-VNS. VNS [15]. Hemos usado el mismo número de ejecuciones
independientes que fueron usadas en esos algoritmos, 10
V-A. Instancias de Comparación ejecuciones por instancia. También hemos usado los resultados
Hemos utilizado las mismas instancias que fueron usadas por obtenidos por P-ACO y P-VNS en cada instancia, los cuales
[15] y que se encuentran disponibles en http://prolog.univie. utilizaron los parámetros de configuración más óptimos, como
ac.at/research/OP. Los conjuntos de instancias se pueden ca- puede comprobarse en [15]. En el caso de nuestro algoritmo
tegorizar en 10 grupos, de acuerdo al número de vértices. En MOABC, siguiendo las recomendaciones de [28], hemos estu-
cada grupo existen varias instancias con distinta restricción diado no solo el parámetro T P (tamaño de la población), sino
de longitud máxima de tour (Cmax ). Los primeros 3 grupos también el parámetro limite (criterio de abandono). Después
(2 p21, 2 p32 y 2 p33) con 21, 32 y 33 vértices, y 11, 18 de realizar tests preliminares con un rango de diferentes valo-
y 20 instancias respectivamente fueron creados por [1]. Los res para cada parámetro, hemos establecido la configuración
2 siguientes grupos (2 p64 y 2 p66) con 64 y 66 vértices, de los parámetros MOABC a un T P de 60 y un limite de 10.
y 14 y 26 instancias fueron propuestos por [23]. Estos 5 Todos los algoritmos fueron parados tras consumir el mismo
grupos fueron creados por sus autores con un único objetivo tiempo de ejecución, el usado por el algoritmo P-ACO. Los
(beneficio), por lo que [15] añadió un segundo objetivo. La tiempos de ejecución y resultados se encuentran disponibles
distancia entre vértices se calcula usando la fórmula de la en http://prolog.univie.ac.at/research/OP para todas las ejecu-
distancia Euclı́dea. Estos 5 grupos pueden considerarse como ciones e instancias de los algoritmos P-ACO y P-VNS.
instancias de test (benchmark). En primer lugar, mostramos una comparación de los re-
Los siguientes 5 grupos fueron creados totalmente por [15] y sultados obtenidos para el indicador hipervolumen (IH ). La
son instancias reales de algunas ciudades y regiones europeas. tabla I muestra los resultados de los tres algoritmos para cada
Dentro de estos 5 grupos tenemos 97 y 273 vértices (2 p97 y conjunto de instancias.

660
XIII Congreso Español en Metaheurı́sticas y Algoritmos Evolutivos y Bioinspirados

Tabla I los tres algoritmos y su comparación basada en el indicador


R ESULTADOS DEL INDICADOR HIPERVOLUMEN . L OS VALORES EN épsilon unario (Iǫ ). En pequeñas instancias, MOABC obtiene
NEGRITA INDICAN SUPERIORIDAD . L OS VALORES ALTOS SON MEJORES .
la mejor media en el indicador épsilon, y también obtiene
Conjuntos IH (MOABC) IH (P-ACO) IH (P-VNS) mejores resultados para los conjuntos de instancias 2 p21
2 p21 3,525 3,390 3,471 y 2 p32 que P-ACO y P-VNS. En instancias medianas,
2 p32 3,366 3,375 3,250 el algoritmo MOABC nuevamente consigue la mejor media
2 p33 3,575 3,638 3,615
en el indicador épsilon, y también los mejores resultados
Media (Pequeño) 3,489 3,468 3,445
2 p64 3,363 3,586 3,569
para 2 p97. En instancias grandes, MOABC es claramente
2 p66 3,346 3,609 3,554 mejor que P-ACO y P-VNS ya que obtiene los mejores
2 p97 3,501 3,315 3,335 resultados para todos los conjuntos de instancias grandes (las
Media (Mediano) 3,403 3,503 3,486 más complejas). Analizando la tabla II podemos observar que
2 p273 3,472 3,329 3,320 MOABC tiene la mejor media global del indicador épsilon,
2 p559 3,648 3,415 3,441
consiguiendo el mejor resultado en 7 de 10 conjuntos de
2 p562 3,634 3,451 3,370
2 p2143 3,640 3,144 2,839 instancias.
Media (Grande) 3,598 3,335 3,242
Media (Todos) 3,497 3,435 3,391 Tabla III
R ESULTADOS DEL INDICADOR R3. L OS VALORES EN NEGRITA INDICAN
SUPERIORIDAD . L OS VALORES BAJOS SON MEJORES .
La tabla I muestra la media de los resultados obtenidos por
conjunto de instancia. Por ejemplo, el conjunto de instancias Conjuntos IR3 (MOABC) IR3 (P-ACO) IR3 (P-VNS)
2 p21 tiene 11 instancias, por lo tanto, esta tabla muestra la 2 p21 0,000 0,031 0,010
2 p32 0,003 0,003 0,030
media de los resultados de 110 ejecuciones. Además, hemos
2 p33 0,018 0,005 0,010
agrupado los conjuntos de instancias en tres grupos, teniendo Media (Pequeño) 0,007 0,013 0,017
en cuenta sus tamaños (número de vértices): pequeño, mediano 2 p64 0,032 0,011 0,007
y grande; y mostrado su media de resultados. Finalmente, 2 p66 0,039 0,008 0,011
mostramos la media para todas las instancias. En instancias 2 p97 0,000 0,046 0,041
pequeñas, MOABC obtiene la mejor media de hipervolumen, Media (Mediano) 0,024 0,022 0,020
2 p273 0,030 0,067 0,063
y consigue mejores resultados en 2 p21 que P-ACO y P- 2 p559 0,011 0,054 0,048
VNS. En instancias medianas, el algoritmo MOABC obtiene 2 p562 0,010 0,041 0,059
el mejor hipervolumen para 2 p97. En instancias grandes, el 2 p2143 0,038 0,135 0,204
algoritmo MOABC es definitivamente superior que P-ACO y Media (Grande) 0,022 0,074 0,093
P-VNS, obteniendo los mejores hipervolúmenes para todas las Media (Todos) 0,018 0,036 0,043
instancias grandes (las más complicadas). De hecho, es aquı́
donde las diferencias entre los tres algoritmos son mayores, Finalmente, y usando la misma metodologı́a, la tabla III
especialmente en el conjunto de instancias con 2143 vértices muestra los resultados para los tres algoritmos y su com-
(2 p2143). Como conclusión, en la tabla I podemos ver que paración del indicador R3 (IR3 ). En pequeñas instancias,
MOABC tiene la mejor media global de hipervolumen. MOABC obtiene la mejor media del indicador R3, y también
los mejores resultados para los conjuntos de instancias 2 p21 y
Tabla II 2 p32. En instancias medianas, MOABC consigue los mejores
R ESULTADOS DEL INDICADOR ÉPSILON UNARIO . L OS VALORES EN resultados para el conjunto de instancias 2 p97. En instancias
NEGRITA INDICAN SUPERIORIDAD . L OS VALORES BAJOS SON MEJORES .
grandes, MOABC es definitivamente mejor que P-ACO y P-
Conjuntos Iǫ (MOABC) Iǫ (P-ACO) Iǫ (P-VNS) VNS, ya que como en los anteriores indicadores consigue los
2 p21 1,000 1,108 1,034 mejores resultados para todas las instancias grandes. Teniendo
2 p32 1,024 1,028 1,124 en cuenta la tabla III, podemos afirmar que MOABC tiene la
2 p33 1,074 1,032 1,050 mejor media global del indicador R3, obteniendo los mejores
Media (Pequeño) 1,032 1,056 1,069
resultados para 7 de 10 conjuntos de instancias.
2 p64 1,085 1,036 1,038
2 p66 1,104 1,033 1,049 Resumiendo los resultados de las tres tablas anteriores
2 p97 1,000 1,158 1,137 podemos concluir que:
Media (Mediano) 1,063 1,076 1,074 MOABC tiene la mejor media global para los tres indi-
2 p273 1,072 1,196 1,161 cadores (IH , Iǫ y IR3 ).
2 p559 1,037 1,118 1,113
2 p562 1,039 1,112 1,128
En las instancias pequeñas, MOABC obtiene la mejor
2 p2143 1,076 1,188 1,265 media para los tres indicadores, y generalmente, propor-
Media (Grande) 1,056 1,153 1,167 ciona mejores resultados que P-ACO y P-VNS en 2 de
Media (Todos) 1,050 1,095 1,103 3 conjuntos de instancias (2 p21 y 2 p32).
En las instancias medianas, de acuerdo con los tres
En segundo lugar, y usando la misma metodologı́a que en indicadores, MOABC claramente supera a los otros dos
el indicador anterior, la tabla II muestra los resultados para algoritmos (P-ACO y P-VNS) en el conjunto de instan-

661
XVIII Conferencia de la Asociación Española para la Inteligencia Artificial

cias 2 p97 (uno de los tres conjuntos de instancias del [6] S. Wang, Y. Zhang, Z. Dong, S. Du, G. Ji, J. Yan, J. Yang, Q. Wang,
grupo). C. Feng, P. Phillips, Feed-forward neural network optimized by hybri-
dization of PSO and ABC for abnormal brain detection, International
En las instancias grandes, MOABC es el mejor algoritmo, Journal of Imaging Systems and Technology 25 (2) (2015) 153–164.
teniendo en cuenta los tres indicadores, sus medias [7] W. Zou, Y. Zhu, H. Chen, B. Zhang, Solving multiobjective optimization
correspondientes, y también los resultados individuales problems using artificial bee colony algorithm, Discrete Dynamics in
Nature and Society 2011 (2011) 569784.
para cada uno de los 4 conjuntos de instancias de este [8] H. Zhang, Y. Zhu, W. Zou, X. Yan, A hybrid multi-objective artificial bee
grupo. Las diferencias respecto a los tres algoritmos colony algorithm for burdening optimization of copper strip production,
son especialmente mayores en el último conjunto de Applied Mathematical Modelling 36 (6) (2012) 2578–2591.
[9] J. Huo, L. Liu, An improved multi-objective artificial bee colony
instancias con 2143 vértices (el más difı́cil). optimization algorithm with regulation operators, Information 8 (1)
(2017) 18.
VI. C ONCLUSIONES [10] D. Feillet, P. Dejax, M. Gendreau, Traveling salesman problems with
Hemos desarrollado un enfoque metaheurı́stico para solucionar profits, Transportation Science 39 (2) (2005) 188–205.
[11] A. Gunawan, H. C. Lau, P. Vansteenwegen, Orienteering problem:
el problema de orientación multiobjetivo. Nuestra propuesta, A survey of recent variants, solution approaches and applications,
MOABC, es un algoritmo de optimización multiobjetivo basa- European Journal of Operational Research 255 (2) (2016) 315–332.
do en el comportamiento de las abejas melı́feras. MOABC ha [12] P. Vansteenwegen, W. Souffriau, D. V. Oudheusden, The orienteering
problem: A survey, European Journal of Operational Research 209 (1)
sido comparado con dos algoritmos multiobjetivo que fueron (2011) 1–10.
publicados anteriormente, P-ACO y P-VNS. Las comparacio- [13] P. Vansteenwegen, W. Souffriau, G. V. Berghe, D. V. Oudheusden, A
nes fueron realizadas usando instancias de test e instancias guided local search metaheuristic for the team orienteering problem,
European Journal of Operational Research 196 (1) (2009) 118–127.
del mundo real del problema de orientación, con un total [14] I.-M. Chao, B. L. Golden, E. A. Wasil, The team orienteering problem,
de 216 instancias agrupadas en 10 conjuntos. Utilizamos tres European Journal of Operational Research 88 (3) (1996) 464–474.
indicadores de calidad multiobjetivo, utilizados habitualmente [15] M. Schilde, K. F. Doerner, R. F. Hartl, G. Kiechle, Metaheuristics for
the bi-objective orienteering problem, Swarm Intelligence 3 (3) (2009)
en la literatura, para comparar los resultados de los tres algo- 179–201.
ritmos. MOABC es mejor en general que P-ACO y P-VNS, de [16] D. Purevsuren, G. Cui, S. ur Rehman, Evolutionary multiobjective
acuerdo a la media de los indicadores y sensiblemente mejor optimization algorithms with path relinking for bi-orienteering problem,
in: Software Engineering and Service Science (ICSESS), 2015 6th IEEE
cuanto mayor (más compleja) es la instancia del problema a International Conference on, 2015, pp. 132–135.
resolver (mayor número de vértices). Por lo tanto, podemos [17] R. Martı́, V. Campos, M. G. Resende, A. Duarte, Multiobjective GRASP
concluir que MOABC es una aproximación muy interesante with path relinking, European Journal of Operational Research 240 (1)
(2015) 54–71.
para resolver el problema de orientación. [18] B. L. Golden, L. Levy, R. Vohra, The orienteering problem, Naval
En el futuro intentaremos aplicar este enfoque a un pla- Research Logistics (NRL) 34 (3) (1987) 307–318.
nificador de rutas turı́sticas. Además, trataremos de mejorar [19] G. A. Croes, A method for solving traveling-salesman problems, Ope-
rations Research 6 (6) (1958) 791–812.
estos resultados usando otras estrategias distintas (p. ej.: otras [20] K. Deb, A. Pratap, S. Agarwal, T. Meyarivan, A fast and elitist multiob-
variantes de ABC u otros algoritmos evolutivos). Su diseño, jective genetic algorithm: NSGA-II, IEEE Transactions on Evolutionary
implementación y ejecución, y la comparación con algoritmos Computation 6 (2) (2002) 182–197.
[21] D. E. Goldberg, Genetic Algorithms in Search, Optimization and Ma-
multiobjetivo es interesante para futuras investigaciones. Final- chine Learning, Addison-Wesley Longman Publishing Co., Inc., Boston,
mente, la aplicación de MOABC en otros tipos de problemas MA, USA, 1989.
de orientación también supone una lı́nea interesante de trabajo. [22] M. Mernik, S.-H. Liu, D. Karaboga, M. Črepinšek, On clarifying
misconceptions when comparing variants of the Artificial Bee Colony
AGRADECIMIENTOS algorithm by offering a new implementation, Information Sciences 291
(2015) 115–127.
Este trabajo ha sido parcialmente financiado por la AEI [23] I.-M. Chao, B. L. Golden, E. A. Wasil, A fast and effective heuristic
(Agencia Estatal de Investigación, España) y el FEDER (Fon- for the orienteering problem, European Journal of Operational Research
88 (3) (1996) 475–489.
do Europeo de Desarrollo Regional, UE), bajo el proyecto [24] J. Knowles, L. Thiele, E. Zitzler, A tutorial on the performance assess-
TIN2016-76259-P (proyecto PROTEIN). Gracias también a la ment of stochastic multiobjective optimizers, Technical report no. 214,
Junta de Extremadura por la ayuda GR18090 otorgada al grupo Computer Engineering and Networks Laboratory (TIK), ETH Zurich,
Switzerland, revised version (Feb 2006).
de investigación TIC015. [25] N. Beume, C. M. Fonseca, M. López-Ibáñez, L. Paquete, J. Vahrenhold,
On the complexity of computing the hypervolume indicator, IEEE
R EFERENCIAS Transactions on Evolutionary Computation 13 (5) (2009) 1075–1082.
[1] T. Tsiligirides, Heuristic methods applied to orienteering, Journal of the [26] E. Zitzler, L. Thiele, M. Laumanns, C. M. Fonseca, V. G. da Fonseca,
Operational Research Society 35 (9) (1984) 797–809. Performance assessment of multiobjective optimizers: an analysis and
[2] D. Karaboga, B. Basturk, A powerful and efficient algorithm for review, IEEE Transactions on Evolutionary Computation 7 (2) (2003)
numerical function optimization: artificial bee colony (ABC) algorithm, 117–132.
Journal of Global Optimization 39 (3) (2007) 459–471. [27] M. P. Hansen, A. Jaszkiewicz, Evaluating the quality of approximations
[3] D. Karaboga, B. Gorkemli, C. Ozturk, N. Karaboga, A comprehensive to the non-dominated set, Tech. Rep. IMM-REP-1998-7, Institute of
survey: artificial bee colony (ABC) algorithm and applications, Artificial Mathematical Modelling, Technical University of Denmark (1998).
Intelligence Review 42 (1) (2014) 21–57. [28] N. Veček, S.-H. Liu, M. Črepinšek, M. Mernik, On the importance of the
[4] Y. Zhang, L. Wu, Optimal multi-level thresholding based on maximum artificial bee colony control parameter ‘limit’, Information Technology
Tsallis entropy via an artificial bee colony approach, Entropy 13 (4) and Control 46 (4) (2017) 566–604.
(2011) 841–859.
[5] Y. Zhang, L. Wu, S. Wang, Magnetic resonance brain image classi-
fication by an improved artificial bee colony algorithm, Progress In
Electromagnetics Research 116 (2011) 65–79.

662
XIII Congreso Español
de Metaheurísticas,
Algoritmos Evolutivos y
Bioinspirados
(XIII MAEB)

MAEB 8.1:
A LGORITMOS M ULTIOBJETIVO
Y A PLICACIONES
XIII Congreso Español en Metaheurı́sticas y Algoritmos Evolutivos y Bioinspirados

Metaheurı́sticas hı́bridas para el problema del


apagado de celdas en redes 5G
Pablo H. Zapata-Cano∗, Francisco Luna†, Juan F. Valenzuela-Valdés∗, Antonio M. Mora∗ , Pablo Padilla∗
∗ Dpto.
de Teorı́a de la Señal, Telemática y Comunicaciones
CITIC, Universidad de Granada
pablozapata@correo.ugr.es, {juanvalenzuela, amorag, pablopadilla}@ugr.es

† Dpto. de Lenguajes y Ciencias de la Computación


Universidad de Málaga
flv@lcc.uma.es

Resumen—La densificación masiva de estaciones base (BS) tráfico máximas a las que hay que dar servicio. Esta forma de
es una de las tecnologı́as facilitadoras bien reconocidas por la proceder plantea un serio problema de consumo energético,
literatura para el desarrollo de la quinta generación de redes de ya que requiere mantener funcionando ese elevado número de
telecomunicaciones (5G). Su implementación, sin embargo, que
requiere el despliegue de miles de BSs por km2 , está en claro BSs, y es especialmente crı́tico en periodos de baja demanda
conflicto con uno de los requisitos de diseño de este tipo de redes, de tráfico, donde la red está infrautilizada. Una lı́nea de trabajo
que pretende tener un 90 % menos de consumo energético que la prometedora para reducir dicho consumo consiste en, dado
actual cuarta generación. Una forma de reducir el coste de estas un escenario fijo que puede representar a la demanda en
redes ultradensas consiste en apagar un subconjunto de BSs de un determinado intervalo de tiempo, apagar un subconjunto
forma que minimice su consumo energético pero, a su vez, se
maximice la capacidad de la misma. Es, por tanto, un problema de las BSs de forma que se minimice la energı́a por las
de optimización multi-objetivo. En este trabajo se propone un BSs y, a la vez, mantenga la red operativa maximizando su
nuevo operador especı́fico para el problema que es capaz de capacidad [4], [5]. Se trata de un problema de optimización
mejorar considerablemente la efectividad de varios algoritmos combinatoria NP-completo [6] cuyo espacio de búsqueda crece
multiobjetivo. Para ello, se han realizado experimentos con 9 exponencialmente con el número de BSs de la UDN.
escenarios de diferentes niveles de densificación tanto de BSs
como de usuarios que muestran un comportamiento consistente y La aproximación en este trabajo, dado los tamaños que
efectivo independientemente del algoritmo e instancia abordada. previstos para dichas redes, es usar metaheurı́sticas [7]. En
particular, el problema se ha formulado como un problema
de optimización multi-objetivo [8] ya que los dos criterios
I. I NTRODUCCI ÓN anteriores, consumo vs. capacidad, están en conflicto entre
La demanda de tráfico de datos en las redes de telefonı́a sı́, puesto que más BSs permiten potencialmente servir a
móvil ha crecido de manera constante desde el comienzo de más usuarios o UEs (del inglés, User Equipments), pero
estos sistemas de telecomunicación, y ası́ seguirá haciéndolo también se necesita más energı́a. En un estudio previo [9],
en el futuro, según transciende de diferentes informes tanto se ha abordado el problema utilizando dos metaheurı́sticas
de entidades públicas como privadas. En efecto, uno de estos multi-objetivo, una clásica como es NSGA-II [10], y otra
informes recientes elaborado por Ericcson expone que “El relativamente más reciente denominada MOCell [11]. La con-
tráfico de datos móvil total se espera que crezca a una tasa tribución del presente trabajo trata de incorporar conocimiento
compuesta anual del 42 %” [1], siendo los smarthpones la experto del problema en la búsqueda de ambos algoritmos
fuente del 90 % de este tráfico. Para dar servicio a semejante con un operador, denominado CSO (del inglés Cell Switch
demanda, las diferentes entidades, tanto públicas como priva- Off ), cuyo comportamiento se fundamenta en apagar aquellas
das, tienen sobre la mesa el desarrollo de la quinta generación BSs que no tienen UEs conectados. Hasta donde conocemos,
de redes de telefonı́a, la conocida como 5G. De entre las es la primera vez que se proponer un operador de búsqueda
diferentes tecnologı́as facilitadoras de los sistemas 5G [2], especı́fico para el problema del encendido/apagado de BSs en
la densificación de la red, i.e., el despliegue de miles de UDNs. Para mostrar su efectividad, se ha incorporado al ciclo
estaciones base (BS) de diferentes tipos por km2 , permite una evolutivo de NSGA-II y MOCell, dando lugar a sus versiones
mayor reutilización del espectro y, por tanto, incrementar en hı́bridas NSGA-IICSO y MOCellCSO , y se han comparado a
gran medida la capacidad del sistema. Son las denominadas las versiones canónicas de los algoritmos sobre un conjunto de
redes ultra-densas o Ultra-Dense Networks (UDNs) [3]. 9 escenarios diferentes que utilizan una densificación creciente
El despliegue de UDNs impone muchas tareas complejas tanto en BSs como en UEs. Los resultados han mostrado que
a diferentes niveles de la red (backhauling, coordinación de se trata de un operador que permite mejorar considerablemente
handovers, etc.), y se realiza en base a unas estimaciones de la búsqueda de ambas metaheurı́sticas multi-objetivo.

665
XVIII Conferencia de la Asociación Española para la Inteligencia Artificial
Tabla I: Parámetros del modelo para BSs y UEs
Celda Parámetro LL LM LH ML MM MH HL HM HH
Gtx 14
macro
f 2 GHz (BW = 100 MHz)
Gtx 12

pico1 micro2 micro1


f 3.5 GHz (BW = 175 MHz)
λmicro1
P [BS/km2 ] 100 100 100 200 200 200 300 300 300
Gtx 10
f 5 GHz (BW = 250 MHz)
λmicro2
P [BS/km2 ] 100 100 100 200 200 200 300 300 300
Gtx 5
f 10 GHz (BW = 500 MHz)
λpico1
P [BS/km2 ] 500 500 500 600 600 600 700 700 700
Gtx 7
pico2

f 14 GHz (BW = 700 MHz)


λpico2
P [BS/km2 ] 500 500 500 600 600 600 700 700 700
Gtx 4
femto2 femto1

f 28 GHz (BW = 1400 MHz)


λfPemto1 [BS/km2 ] 1000 1000 1000 2000 2000 2000 3000 3000 3000
Gtx 3
f 66 GHz (BW = 3300 MHz)
λfPemto2 [BS/km2 ] 1000 1000 1000 2000 2000 2000 3000 3000 3000
UEs λU
P
E [U E/km2 ] 1000 1000 1000 2000 2000 2000 3000 3000 3000

El resto del trabajo se organiza como sigue: la siguiente en el intervalo [2.0, 4.0] para cada una de las 10 regiones. El
sección detalla el modelado de las UDNs y el cálculo de las ratio señal-interferencia más ruido (Signal to Interference plus
funciones objetivo. La Sección III describe el operador CSO y Noise Ration o SINR) para el UE k, se calcula como:
su integración en los ciclos evolutivos de NSGA-II y MOCell. Prx,j,k [mW ]
La metodologı́a de los experimentos y el análisis de resultados SIN Rk = PM
se realiza en la Sección IV. Por último, la Sección V incluye Prx,i,k [mW ] − Prx,j,k [mW ] + Pn [mW ]
i=1
(4)
las principales conclusiones del trabajo y las lı́neas de trabajo
donde Prx,j,k es la potencia recibida por el UE k de la BS j,
futuro que se abren a partir de él.
el sumatorio es la potencia total recibida por el UE k desde
II. M ODELADO DEL PROBLEMA todas las BSs activas y operando a la misma frecuencia que
Esta sección se dedica a la descripción del modelo de UDN j, y Pn es la potencia del ruido, calculada como:
utilizado. Se considera un área de servicio de 500 × 500 m2 , Pn = −174 + 10 log10 BWj (5)
que se ha discretizado utilizando una malla de 100×100 puntos
(también llamados “pixels” o elementos de área) distribuidos siendo BWj el ancho de banda de la BS j, definida como el
uniformemente y, por tanto, cada uno cubre un área de 25 m2 5 % de la frecuencia de operación de la BS. La Tabla I incluye
donde la potencia de la señal se asume constante. La UDN todos los valores para los parámetros del modelo. Finalmente,
está dividida en 10 regiones diferentes, cada una con unas la capacidad del UE k es:
condiciones de propagación diferentes. Ck [bps] = BWkj [Hz] ∗ log2 (1 + SIN Rk ) (6)
Para calcular la potencia de señal recibida en cada punto,
Prx [dBm], se ha utilizado el siguiente esquema: donde BWkj es el ancho de banda asignado al UE k cuando
se conecta a la BS j, asumiendo una planificación en round-
Prx [dBm] = Ptx [dBm] + P Loss[dB] (1) robin, esto es:
BWj
donde Prx es la potencia recibida en dBm, Ptx es la potencia BWkj = (7)
Nj
transmitida en dBm, y P Loss son las pérdidas globales de
señal, que depende de las condiciones de propagación de cada considerando Nj como el número de UEs conectados a la BS
región, y se calcula como: j. La polı́tica de asignación de UEs a BSs es que un UE siem-
pre es servido por la BS con mayor SINR, independientemente
P Loss[dB] = GA + P A (2) del tipo de BS.
siendo GA las ganancias de las dos antenas (transmisión y El modelo de UDN usado en este trabajo utiliza 4 tipos de
recepción), y P A las pérdidas de transmisión en el espacio, celdas que tienen diferentes tamaños (i.e., zonas de cobertura).
calculadas como: Ordenadas según su tamaño, tenemos femtoceldas, picoceldas,
 K microceldas y macroceldas. De los tres primeros tipos, además,
λ
P A[dB] = (3) se han definido dos subtipos (ver Tabla I), con lo que suman
2∗π∗d un total de 7 tipos de celdas diferentes. Las BSs que sirven a
donde d es la distancia Euclidea del punto correspondiente a la dichas celdas tienen todas una potencia de transmisión Ptx =
BS, K es el exponente de pérdidas, que varı́a aleatoriamente 750mW , por lo que su cobertura real está definida por sus

666
XIII Congreso Español en Metaheurı́sticas y Algoritmos Evolutivos y Bioinspirados

frecuencias de operación y las consiguientes pérdidas que se Algoritmo 1 Pseudocódigo del operador CSO
inducen en el cálculo de la SINR (a mayor frecuencia, menor 1: C ← celdas(U DN )
cobertura). 2: for c in C do
Las BSs se despliegan utilizando un Proceso de Poisson 3: if (UEsConectados(c) == 0) then
(PPP) independiente con diferentes densidades (definidas por 4: apagar(c)
λBS
P ). Los UEs también se posicionan usando una PPP con 5: end if
valor λUEP , pero utilizando atractores sociales (SAs por sus 6: end for
siglas en inglés), siguiendo el procedimiento propuesto en
[12]. Este esquema de despliegue usa, además, dos factores
α and µβ , que indican cómo de fuerte es la atracción de BSs III-B. El operador CSO
a SAs, y de SAs a UEs. Los valores usados en las simulaciones
Para incorporar información del problema a la búsqueda
son α = µβ = 0.25.
de las metaheurı́sticas, el operador CSO recorre todas las
La parametrización detallada de los 9 escenarios abordados
celdas de la solución candidata, y apaga aquellas que no están
en este trabajo se incluye en la Tabla I. Los nombres en
sirviendo a ningún UE.
las nueve últimas columnas, XY, indican la densidad del
Su aparente simpleza no impide que sea un operador con
despliegue de BSs y UEs, respectivamente, de forma que X,Y
gran capacidad de intensificación de la búsqueda y, como
= {L,M,H} significa un despliegue de baja (L), media (M) o
se verá más adelante en la sección experimental, se ha de
alta (H) densidad para BSs (parámetro λBS P del PPP) y UEs
aplicar con precaución. Hay que tener en cuenta que si,
(parámetro λUEP del PPP). Los parámetros G tx y f de cada
en cada solución candidata, se apagan todas las celdas que
tipo de celda se refieren a la ganancia en transmisión y la
no tienen usuarios conectados, se impide que el algoritmo
frecuencia de operación de la BS, respectivamente.
pueda evolucionar soluciones que reasignen UEs de una BS
El cálculo de las funciones objetivo se realiza como sigue.
a otra vacı́a, puesto que todas estarı́an apagadas al aplicar el
Para el primer objetivo, que mide el consumo eléctrico, cuenta
operador.
el número de BSs que están activas en la solución candidata
de la metaheurı́stica. Se asume que, una vez encendidas sólo III-C. Los algoritmos hı́bridos NSGA-IICSO y MOCellCSO
se considera la potencia de transmisión, que tiene valor Ptx =
750mW para todos los tipos. Para calcular la capacidad total Esta sección se articula en base a la plantilla genérica de
del sistema, como medida de la cantidad de información que metaheurı́stica multiobjetivo (Algoritmo 2) a partir de la cual
pueden recibir (donwlink) los UEs presentes en la UDN, se usa se describen las versiones canónicas de NSGA-II y MOCell
el siguiente procedimiento: primero, los UEs se asignan a las para, posteriormente, detallar los cambios necesarios para
BSs que les proporcionan mejor SINR; segundo, el ancho de introducir el operador CSO.
banda disponible en la BS se reparte entre los UEs conectados; El algoritmo NSGA-II (Non-dominated Sorting Genetic Al-
y, finalmente, se calcula la capacidad para cada uno de ellos gorithm II por sus siglas en inglés) fue propuesto por Deb et al.
según la Ecuación 6 y se agrega la de todos. en [10]. Se trata de un algoritmo genético cuyo funcionamiento
se basa en generar, a partir de una población Pt , otra auxiliar
III. M ETAHEUR ÍSTICAS H ÍBRIDAS : EL OPERADOR CSO Qt usando los operadores genéticos de selección, cruce y
En esta sección se detalla, en primer lugar, la representa- mutación (lı́nea 8 del Algoritmo 2); entonces, las soluciones
ción utilizada para abordar el problema y los consiguientes incluidas en Pt ∪Qt se ordenan según su rango y, aquellas con
operadores genéticos, en segundo lugar, el operador CSO, la mejor valor de este indicador de calidad, con las que pasan a
contribución de este trabajo, y, finalmente, una breve descrip- la siguiente generación Pt+1 (lı́nea 11). En caso de tener que
ción de las metaheurı́sticas multi-objetivo utilizadas y cómo seleccionar entre individuos de mismo rango, NSGA-II utiliza
integran al operador dentro de su ciclo evolutivo.
III-A. Representación y operadores genéticos Algoritmo 2 Plantilla de una metaheurı́stica multi-objetivo
La representación utilizada para las soluciones candidatas 1: S(0) ← GenerarSolucionesIniciales()
es el clásico array de bits en el que cada bit representa 2: A(0) ← ∅
a una celda de la UDN e indica si está encendida (’1’) o 3: Evaluar(S)
apagada (’0’). Los operadores de selección, cruce y mutación 4: A(0) ← Actualizar(A(0), S(0))
son, respectivamente, torneo binario, cruce de dos puntos con 5: t←0
cr = 0.9, y bit flip con mr = 1/L, donde L es el número de 6: while not CondiciónDeParada( ) do
BSs de la UDN. La condición de parada consiste en computar 7: t←t+1
100000 evaluaciones de función. Todos los algoritmos de este 8: S(t) ← OperadoresGenéticos(A(t − 1), S(t − 1))
trabajo comparten la implementación tanto la representación 9: Evaluar(S ′(t))
de soluciones, como de los operadores, ya que están integrados 10: A(t) ← Actualizar(A(t), S ′ (t))
en el framework para optimización multiobjetivo jMetal1 . 11: end while
1 https://github.com/jMetal/ 12: Salida: A

667
XVIII Conferencia de la Asociación Española para la Inteligencia Artificial
Algoritmo 3 NSGA-IICSO y MOCellCSO a maximizar cuyos valores dependen de la escala arbitraria de
8: S(t) ← OperadoresGenéticos(A(t − 1), S(t − 1)) los valores de las funciones objetivo. Para su uso correcto, en
9: S ′ (t) ← CSO(S(t)) caso de no disponer del frente óptimo de Pareto, se genera un
10: Evaluar(S ′(t)) frente de referencia (RPF) para cada instancia del problema,
11: A(t) ← Actualizar(A(t), S ′ (t)) compuesto por todas las soluciones no dominadas encontradas
por todos los algoritmos para el mismo. Con ese RPF, se
normaliza cada aproximación al frente antes de calcular el
un estimador de densidad que prioriza aquellas que están en valor del HV. Para dotar a estos resultados de confianza
las zonas menos pobladas de la aproximación al frente. estadı́stica, se ha comprobado primero la normalidad (test de
Por su parte, MOCell (Multi-Objective Cellular Genetic Kolmogorov-Smirnov) y homocedasticidad (Test de Levene)
Algorithm por sus siglas en inglés) es un algoritmo genético de las muestras y, una vez verificadas ambas condiciones, se
celular propuesto en [11]. Como muchos otras metaheurı́sti- ha usado un test paramétrico (test one-way ANOVA) para
cas multi-objetivo, MOCell incluye un archivo externo para verificar si se rechaza la hipótesis nula. Por último, se ha
almacenar las soluciones no-dominadas que encuentra durante aplicado el test de Tukey para realizar la comparación por
su ejecución (lı́nea 4 del Algoritmo 2). Este archivo está pares. En todos los casos se ha utilizado un nivel de confianza
acotado y usa el mismo estimador de densidad de NSGA- del 95 %.
II para mantener la diversidad en su aproximación al frente Si bien el HV permite comparar varios algoritmos numéri-
de Pareto. Su diferencia fundamental radica en la relación de camente, desde el punto de vista del experto que ha de elegir
vecindad entre las soluciones, que se disponen en una malla una solución del frente, este indicador no da información sobre
toroidal 2D. El operador de selección escoge una solución de la forma en la que se distribuyen las soluciones no-dominadas
dicho vecindario y otra desde el archivo externo. Después de a lo largo de las diferentes aproximaciones al frente de Pareto.
aplicar los operadores de cruce y mutación, el nuevo individuo Las attainment surfaces tienen precisamente esa funcionalidad.
generado se compara con el actual y lo reemplaza si es mejor; Son una representación gráfica del rendimiento esperado y su
si ambas soluciones son no-dominadas, MOCell reemplaza el variabilidad de diferentes ejecuciones de un algoritmo multi-
peor individuo del vecindario. En estos dos últimos casos, el objetivo. Informalmente, la 50 %-attainment surface se podrı́a
nuevo individuo se añade al archivo externo. considerar como la aproximación promedio al frente de Pareto,
La integración del operador CSO dentro del ciclo evolutivo es decir, serı́a el equivalente a la mediana en el caso mono-
de NSGA-II y MOCell se consigue reemplazando las lı́neas 8 objetivo.
a 10 del Algoritmo 2 por las lı́neas del algoritmo Algoritmo 3, IV-B. Resultados
es decir, justo después de aplicar los operadores genéticos, y
antes de evaluar para determinar su incorporación o no a la Se ha planteado un diseño experimental para medir el efecto
siguiente generación de soluciones del algoritmo. Esto permite de la hibridación entre NSGA-II y MOCell, y el operador
apagar aquellas celdas que no está sirviendo a ningún UE. Su CSO. Para ello, se han planteado dos tasas de aplicación de
aplicación, como el cruce y la mutación, depende de una tasa este último: 0.01 y 0.1, que se han usado como superı́ndice
de aplicación, csor , sobre la que se han diseñado diferentes en el nombre para distinguirlos. Ası́, se puede ver que, por
experimentos para ver su impacto. cada algoritmo, hay tres columnas: su versión canónica y las
versiones hı́bridas con tasa de aplicación de 0.01 y 0.1. En la
IV. E XPERIMENTACI ÓN Tabla II, que incluye los resultados del HV, usa un fondo en
Esta sección describe la metodologı́a utilizada para la reali- gris los mejores valores de este indicador por cada algoritmo.
zación de los experimentos que muestran la efectividad de las Hay una primera conclusión clara: la hibridación mejora
nuevas propuestas hı́bridas, NSGA-IICSO y MOCellCSO , ası́ la búsqueda de los algoritmos, ya que, en ningún escenario,
como el análisis de los resultados obtenidos. un algoritmo canónico ha sido mejor que uno hı́brido. Esto
es un resultado muy prometedor porque existen pocas apro-
IV-A. Metodologı́a ximaciones hı́bridas en el dominio y es un terreno amplı́simo
Dado que las metaheurı́sticas son algoritmos estocásticos, por explorar. La segunda es que, entre las versiones hı́bridas,
se han realizado 30 ejecuciones independientes para cada aquellas que usan una tasa de aplicación más pequeña (0.01
algoritmo en cada uno de los nueve escenarios. Cada ejecución vs. 0.1) permiten alcanzar mejores aproximaciones al frente
genera una instancia aleatoria del problema, pero se usan las de Pareto. Después de inspeccionar trazas de las ejecuciones
mismas 30 semillas para garantizar que todos los algoritmos (no incluidas por falta de espacio), se puede observar que el
abordan el mismo conjunto de instancias. Se han utilizado operador tiene un gran efecto en la diversidad de la población,
dos indicadores para medir la calidad de las aproximaciones es decir, si se aplica con mucha frecuencia, termina apagando
al frente de Pareto alcanzadas por los cuatro algoritmos: el en gran medida las mismas celdas y cercena el nuevo material
hypervolume (HV) [13] y las superficies de consecución (del genético creado por los operadores de cruce y mutación.
inglés attaiment surfaces) [14]. Si nos detenemos un poco más en los números concretos
El HV está considerado como uno de los indicadores más y se analizan según las instancias, se puede observar que las
fiables dentro de la comunidad multi-objetivo. Es un indicador diferencias en el HV se hace más manifiesta a medida que

668
XIII Congreso Español en Metaheurı́sticas y Algoritmos Evolutivos y Bioinspirados
Tabla II: Resultados del HV para todos los algoritmos sobre los 9 escenarios
NSGA-II NSGA-II0.01
CSO NSGA-II0.1
CSO MOCell MOCell0.01
CSO MOCell0.1
CSO
0.4560 0.5372 0.5296 0.4737 0.5359 0.5329
LL
±0.1017 ±0.1263 ±0.1250 ±0.1180 ±0.1250 ±0.1274
0.4364 0.5404 0.5338 0.4155 0.5385 0.5351
LM
±0.0929 ±0.1141 ±0.1179 ±0.0928 ±0.1155 ±0.1145
0.4548 0.5408 0.5371 0.4324 0.5340 0.5371
LH
±0.1027 ±0.1274 ±0.1271 ±0.0903 ±0.1252 ±0.1248
0.3288 0.4907 0.4853 0.3584 0.4892 0.4867
ML
±0.0698 ±0.1045 ±0.1045 ±0.0817 ±0.1059 ±0.1032
0.3904 0.5573 0.5455 0.3947 0.5554 0.5508
MM
±0.0728 ±0.1095 ±0.1045 ±0.0728 ±0.1061 ±0.1044
0.3243 0.5356 0.5401 0.3194 0.5235 0.5565
MH
±0.0580 ±0.0948 ±0.0874 ±0.0650 ±0.0925 ±0.0954
0.1316 0.5117 0.4981 0.2681 0.5142 0.5051
HL
±0.0798 ±0.1071 ±0.1093 ±0.0729 ±0.1076 ±0.1093
0.1103 0.4837 0.4714 0.2157 0.4790 0.4743
HM
±0.0706 ±0.0921 ±0.0900 ±0.0679 ±0.0920 ±0.0903
0.1518 0.4852 0.4717 0.2335 0.4774 0.4690
HH
±0.0681 ±0.0905 ±0.0917 ±0.0619 ±0.0863 ±0.0880

aumenta la densidad tanto de BSs como de UEs. Es decir, a estaciones base que serán necesarios para la quinta generación
medida que las instancias se hacen más grandes y complejas, de sistemas de telecomunicación. Se ha formulado como un
el efecto del operador es mucho más determinante. Esto es problema de optimización multi-objetivo en el que se ha de
además consistente para ambos algoritmos, ya que NSGA-II minimizar el consumo (número de BSs activas), a la vez que
y MOCell tienen unos promedios de HV de 0.1313 y 0.2390 se ha de aumentar la capacidad (GBps en downlink). Se ha
en las instancias HX, respectivamente, cuando las versiones propuesto un nuevo operador de búsqueda local, llamado CSO,
hı́bridas están en torno a 0.4935 y 0.4902. que se ha integrado dentro de dos algoritmos del dominio, uno
Un último efecto del operador CSO sobre los algoritmos muy bien conocido, NSGA-II, y otro más reciente, pero que ha
es que reduce e incluso invierte las mejoras en la búsqueda resultado en una mejor exploración del espacio de búsqueda,
existentes entre NSGA-II y MOCell. Con esto nos referimos denominado MOCell. Las versiones hı́bridas, NSGA-IICSO
a que, tanto en el trabajo previo [9], como en los valores y MOCellCSO , han alcanzado aproximaciones al frente de
del HV alcanzados por los algoritmos canónicos, MOCell Pareto del problema con una mejora notable en el indicador
supera claramente a NSGA-II. Sin embargo, cuando se usa el HV, si bien las attainment surfaces han mostrado que el
operador CSO, la situación se invierte, y es NSGA-II el que operado ha centrado la búsqueda en zonas con UDNs que
obtiene valores más altos de este indicador. Las diferencias activan un bajo número de BSs, y también de menor capacidad.
son mı́nimas y estadisticamente no significativas según el test Como trabajo futuro se pretende seguir diseñando operadores
de Tukey, pero viene a poner de manifiesto que el motor de de búsqueda que equilibren ambos objetivos, ası́ como el
búsqueda de NSGA-II ha integrado mejor el operador CSO. impacto de los mismos en otras metaheurı́sticas multi-objetivo
La corroboración gráfica de lo que muestra el HV se puede del dominio.
observar en las attainment surfaces (Fig. 1). A medida que
R ECONOCIMIENTOS
los escenarios son más densos, las aproximaciones medianas
al frente de las versiones canónicas se van separando cada Este trabajo ha sido financiado parcialmente por el Minis-
vez más de las versiones hı́bridas. Sin embargo, se aprecia terio de Economı́a y Competitividad y los fondos FEDER
un efecto que el HV oculta, y de ahı́ la importancia de con los proyectos TIN2016-75097-P, TIN2014-56494-C4-3-
tener representaciones gráficas de los frentes obtenidos: las P, TIN2017-85727-C4-2-P y TEC2015-68752. Francisco Luna
versiones hı́bridas muestrean mucho más las zonas del espacio también agradece la ayuda de la Universidad de Málaga
de búsqueda que contienen pocas BSs activas (áreas más hacia y el proyecto PPIT.UMA.B12017/15 del I Plan Propio de
la izquierda), pero las versiones canónicas obtienen soluciones Investigación y Transferencia.
R EFERENCIAS
no-dominadas con muchas BSs operativas (mayor consumo),
pero también de mayor capacidad (áreas más a la izquierda). [1] Ericsson, “Mobility Report,” White Paper, no. June, 2017.
[Online]. Available: https://www.ericsson.com/assets/local/mobility-
Esto está provocado porque el operador CSO, en realidad, sólo report/documents/2017/ericsson-mobility-report-june-2017.pdf
mejora uno de los objetivos (consumo), descuidando el otro [2] D. Lopez-Perez, M. Ding, H. Claussen, and A. H. Jafari, “Towards 1
(capacidad). Gbps/UE in Cellular Systems: Understanding Ultra-Dense Small Cell
Deployments,” IEEE Communications Surveys & Tutorials, vol. 17,
V. C ONCLUSIONES no. 4, pp. 2078–2101, 2015.
[3] X. Ge, S. Tu, G. Mao, C.-X. Wang, and T. Han, “5G Ultra-Dense
Este trabajo se ha planteado la resolución del apagado Cellular Networks,” IEEE Wireless Communications, vol. 23, no. 1, pp.
de celdas en el contexto de los despliegues ultradensos de 72–79, feb 2016.

669
XVIII Conferencia de la Asociación Española para la Inteligencia Artificial

500 900 1100


450 800 1000
Capacidad (Gbps)

Capacidad (Gbps)

Capacidad (Gbps)
400 700 900
350 600 800
700
300 500
600
250 400
500
200 NSGA-II 300 NSGA-II 400 NSGA-II
150 NSGA-IICSO 200 NSGA-IICSO 300 NSGA-IICSO
100 MOCell 100 MOCell MOCell
MOCellCSO MOCellCSO 200 MOCellCSO
50 0 100
0 10 20 30 40 50 60 70 80 0 10 20 30 40 50 60 70 80 0 10 20 30 40 50 60 70 80 90
BSs activas BSs activas BSs activas
(a) Escenario LL (b) Escenario LM (c) Escenario LH

700 1400 1800


600 1200 1600
Capacidad (Gbps)

Capacidad (Gbps)

Capacidad (Gbps)
1400
500 1000
1200
400 800 1000
300 600 800
NSGA-II NSGA-II 600 NSGA-II
200 400
NSGA-IICSO NSGA-IICSO 400 NSGA-IICSO
100 MOCell 200 MOCell 200 MOCell
MOCellCSO MOCellCSO MOCellCSO
0 0 0
0 10 20 30 40 50 60 70 80 90 0 20 40 60 80 100 120 140 0 20 40 60 80 100 120 140
BSs activas BSs activas BSs activas
(d) Escenario ML (e) Escenario MM (f) Escenario MH

900 1800 2500


800 1600
Capacidad (Gbps)

Capacidad (Gbps)

Capacidad (Gbps)
1400 2000
700
600 1200
1500
1000
500
800
400 1000
NSGA-II 600 NSGA-II NSGA-II
300 NSGA-IICSO 400 NSGA-IICSO NSGA-IICSO
500
200 MOCell 200 MOCell MOCell
MOCellCSO MOCellCSO MOCellCSO
100 0 0
0 20 40 60 80 100 120 0 20 40 60 80 100120140160180 0 20 40 60 80 100120140160180200
BSs activas BSs activas BSs activas
(g) Escenario HL (h) Escenario HM (i) Escenario HH

Figura 1: Attaiment surfaces de NSGA-II, MOCell y sus versiones hı́bridas, NSGA-IICSO y MOCellCSO , para los 9 escenarios
considerados

[4] Q.-N. Le-The, T. Beitelmal, F. Lagum, S. S. Szyszkowicz, and H. Ya- objective cellular genetic algorithm,” in IEEE 5G World Forum, 9-11
nikomeroglu, “Cell Switch-Off Algorithms for Spatially Irregular Base July, Santa Clara, USA, 2018, pp. 422–426.
Station Deployments,” IEEE Wireless Communications Letters, vol. 6, [10] K. Deb, A. Pratap, S. Agarwal, and T. Meyarivan, “A fast and elitist
no. 3, pp. 354–357, jun 2017. multiobjective genetic algorithm: NSGA-II,” IEEE Transactions on
[5] F. Lagum, Q.-N. Le-The, T. Beitelmal, S. S. Szyszkowicz, and H. Ya- Evolutionary Computation, vol. 6, no. 2, pp. 182 – 197, 2002.
nikomeroglu, “Cell Switch-Off for Networks Deployed With Variable [11] A. J. Nebro, J. J. Durillo, F. Luna, B. Dorronsoro, and E. Alba, “Mocell:
Spatial Regularity,” IEEE Wireless Communications Letters, vol. 6, no. 2, A cellular genetic algorithm for multiobjective optimization,” Int. J. of
pp. 234–237, apr 2017. Intelligent Systems, vol. 24, no. 7, pp. 723 – 725, 2009.
[6] D. Gonzalez G., J. Hamalainen, H. Yanikomeroglu, M. Garcia-Lozano, [12] M. Mirahsan, R. Schoenen, and H. Yanikomeroglu, “HetHetNets: He-
and G. Senarath, “A Novel Multiobjective Cell Switch-Off Framework terogeneous Traffic Distribution in Heterogeneous Wireless Cellular
for Cellular Networks,” IEEE Access, vol. 4, pp. 7883–7898, 2016. Networks,” IEEE Journal on Selected Areas in Communications, vol. 33,
[7] C. Blum and A. Roli, “Metaheuristics in combinatorial optimiza- no. 10, pp. 2252–2265, 2015.
tion: Overview and conceptual comparison,” ACM Computing Surveys, [13] E. Zitzler and L. Thiele, “Multiobjective evolutionary algorithms: a
vol. 35, no. 3, pp. 268–308, 2003. comparative case study and the strength pareto approach,” IEEE Trans.
[8] D. Gonzalez Gonzalez, E. Mutafungwa, B. Haile, J. Hämäläinen, and Evolutionary Computation, vol. 3, no. 4, pp. 257–271, 1999.
H. Poveda, “A Planning and Optimization Framework for Ultra Dense [14] J. Knowles, “A summary-attainment-surface plotting method for visua-
Cellular Deployments,” Mobile Information Systems, vol. 2017, pp. 1– lizing the performance of stochastic multiobjective optimizers,” in 5th
17, 2017. International Conference on Intelligent Systems Design and Applications
[9] F. Luna, J. F. Valenzuela-Valdés, R. Luque-Baena, J. M. Cruz, and (ISDA’05), 2005, pp. 552 – 557.
P. Padilla, “Addressing the 5g cell switch-off problem with a multi-

670
XIII Congreso Español en Metaheurı́sticas y Algoritmos Evolutivos y Bioinspirados

MOEA-EFEP: Un algoritmo evolutivo


multi-objetivo para la extracción de patrones
emergentes difusos
A.M. Garcia-Vico, C.J. Carmona, P. González, M.J. del Jesus
Departamento de Informática, Instituto Andaluz Interuniversitario en Data Science and Computational Intelligence
Universidad de Jaén, Jaén, España
{agvico|ccarmona|pglez|mjjesus}@ujaen.es

Resumen—Este trabajo es un resumen del publicado por los


autores en la revista IEEE Transactions on Fuzzy Systems [1] en
el que se presenta un nuevo modelo evolutivo multi-objetivo para 
la extracción de patrones emergentes difusos con un gran balance 0,
 Si Sop1 (X) = Sop2 (X) = 0,
entre la capacidad descriptiva de los mismos y su fiabilidad. GR(X) = ∞, Si Sop1 (X) = 0 ∧ Sop2 (X) 6= 0,
Index Terms—Descubrimiento de reglas descriptivas supervisa-  Sop2 (X) ,

en otro caso
Sop1 (X)
das, minerı́a de patrones emergentes, algoritmos evolutivos multi-
(1)
objetivo, sistemas difusos evolutivos.
donde Sopi (X) indica el soporte del patrón X en el con-
junto de datos i. EPM tiene como objetivos principales la
I. R ESUMEN descripción de caracterı́sticas discriminativas entre clases, la
descripción de fenómenos emergentes en datos temporales,
Tradicionalmente, en minerı́a de datos se distinguen dos donde el primero de estos objetivos ha sido el más desarrollado
enfoques claramente diferenciados: un enfoque predictivo, a lo largo de la literatura.
cuyo objetivo es la obtención de un modelo para la predicción El principal problema de la extracción de patrones emergen-
del valor de una variable de interés en nuevas instancias tes reside en su propia definición, ya que definen un espacio
no vistas hasta el momento, utilizando para ello aprendizaje de búsqueda que no es convexo debido a que el GR es una
supervisado; y un enfoque descriptivo con el objetivo de crear proporción de soportes [9]. Esto permite que aquellos patrones
un modelo que describa relaciones interesantes en los datos con soportes más altos puedan tener un GR menor que aquellos
utilizando para ello habitualmente aprendizaje no supervisado. patrones con soportes menores. Por esta razón a lo largo de
Sin embargo, a lo largo de la literatura se han ido desarrollando la literatura se han desarrollado diferentes tipos de patro-
una serie de técnicas que se encuentran a medio camino entre nes emergentes, como por ejemplo los patrones emergentes
ambos enfoques, agrupadas bajo el nombre de “descubrimiento Jumping [10] o los patrones emergentes χ2 [11]. Asimismo,
de reglas descriptivas basadas en aprendizaje supervisado” se han desarrollado diferentes técnicas de extracción como
(SDRD) [2], [3] cuyo propósito es la obtención de un modelo las técnicas basadas en lı́mites o en árboles con el objetivo
descriptivo con de conocimiento relevante sobre una variable de extraer de manera eficiente aquellos de mayor calidad y
de interés en un conjunto de datos. poder discriminativo. Sin embargo, la gran mayorı́a de estos
El principal objetivo de las técnicas SDRD no es la extrac- métodos han sido completamente enfocados a clasificación
ción de un modelo con el fin de clasificar nuevas instancias, ignorando por completo las capacidades descriptivas de los
sino la obtención de un modelo que permita describir de mismos. No obstante, en los últimos años se han desarrollado
una manera simple y fácilmente comprensible el fenómeno técnicas basadas en algoritmos evolutivos que han permitido la
subyacente en los datos por parte de los expertos. Por tanto, extracción de patrones emergentes con un buen balance entre
en este grupo de tareas se agrupan todas aquellas técnicas las capacidades descriptivas y la fiabilidad de las mismas [8].
de minerı́a de datos que utilizan un modelo de reglas y Nuestra aportación a la literatura es un algoritmo genético
aprendizaje supervisado para obtener conocimiento descriptivo multi-objetivo que permite la extracción de patrones emer-
sobre los datos, como por ejemplo el descubrimiento de gentes difusos llamado MOEA-EFEP (Multi-Objective Evolu-
subgrupos [4], [5], la minerı́a de conjuntos de contraste [6] tionary Algorithm for the Extraction of Fuzzy Emerging Pat-
o la minerı́a de patrones emergentes [7], [8], entre otras. terns). MOEA-EFEP utiliza lógica difusa para el tratamiento
La minerı́a de patrones emergentes (EPM) se define como de variables de tipo numérico con el fin de evitar pérdidas de
la búsqueda de todos los patrones que, dados dos conjuntos de información y mejorar la interpretabilidad de los resultados.
datos D1 y D2 , tengan un ı́ndice de crecimiento (GR) mayor Asimismo, MOEA-EFEP está basado en el algoritmo multi-
a un umbral ρ > 1. Este ı́ndice de crecimiento se define como objetivo NSGA-II [12], el cual ha sido modificado para que el
la siguiente función: proceso de búsqueda esté orientado a la extracción de patrones

671
XVIII Conferencia de la Asociación Española para la Inteligencia Artificial

emergentes de gran calidad, es decir, un conjunto de patrones entre generalidad y fiabilidad de los resultados. Por otro lado,
simple, con gran capacidad de generalización y fiable. se demostró la calidad de las reglas extraı́das mediante el uso
En concreto, MOEA-EFEP emplea un enfoque “cromosoma del filtro de post-procesamiento basado en valores de confianza
= regla” en el que un individuo de la población representa una mayores al 60 %. Por último, MOEA-EFEP superó de manera
regla potencial y el resultado final es el conjunto formado por significativa al resto de métodos comparados en cuanto a la
la unión de varios individuos. En este punto, es importante generalidad de las reglas descriptivas con una fiabilidad similar
remarcar que MOEA-EFEP representa tanto el antecedente utilizando para ello un número de reglas mucho menor. Por lo
como el consecuente de la regla por lo que puede extraer tanto, MOEA-EFEP es un algoritmo que obtiene un modelo
patrones emergentes para todas las clases del problema en de patrones emergentes con el mejor balance generalidad-
una única ejecución. Asimismo, se permite el uso de dos fiabilidad ası́ como el modelo de reglas más simple.
representaciones del conocimiento diferentes en función de
AGRADECIMIENTOS
las necesidades del problema: reglas canónicas, formadas por
conjunciones de pares atributo-valor o bien reglas en forma Este trabajo ha sido subvencionado por el Ministerı́o de
normal disyuntiva (DNF) donde se permite que un atributo Economı́a y Competitividad bajo el proyecto TIN2015-68454-
pueda tener más de un posible valor mediante disyunciones. R y el contrato predoctoral FPI referencia BES-2016-077738
Los individuos de la población interactúan entre si mediante asociado al mismo (Fondos FEDER).
el uso de un enfoque cooperativo-competitivo. Este enfoque se R EFERENCIAS
basa, por un lado, en la competición propia de un algoritmo
[1] A. M. Garcı́a-Vico, C. J. Carmona, P. González, and M. J. del Jesus,
evolutivo a través de los operadores genéticos. Dichos opera- “Moea-efep: Multi-objective evolutionary algorithm for extracting fuzzy
dores son, en concreto, un operador de inicialización guiada, emerging patterns,” IEEE Transactions on Fuzzy Systems, In Press.
que genera individuos con pocas variables y, por tanto, muy [2] P. Kralj-Novak, N. Lavrac, and G. I. Webb, “Supervised Descriptive
Rule Discovery: A Unifying Survey of Constrast Set, Emerging Pateern
generales; un operador de cruce multi-punto; un operador de and Subgroup Mining,” Journal of Machine Learning Research, vol. 10,
mutación orientada con capacidad para eliminar o modificar pp. 377–403, 2009.
aleatoriamente un gen de un individuo; y el operador de [3] C. J. Carmona, M. J. del Jesus, and F. Herrera, “A Unifying Analysis
for the Supervised Descriptive Rule Discovery via the Weighted Relative
reemplazo de la población basado en la ordenación rápida Accuracy,” Knowledge-Based Systems, vol. 139, pp. 89–100, 2018.
por frentes de dominancia propia del algoritmo NSGA-II. [4] W. Kloesgen, “Explora: A Multipattern and Multistrategy Discovery
Asimismo, se utiliza una población élite y un mecanismo de Assistant,” in Advances in Knowledge Discovery and Data Mining.
American Association for Artificial Intelligence, 1996, pp. 249–271.
competición adicional basado en el proceso de competición [5] S. Wrobel, “An Algorithm for Multi-relational Discovery of Subgroups,”
de tokens [13]. En la actualización de esta población élite in Proc. of the 1st European Symposium on Principles of Data Mining
es cuando los individuos cooperan entre sı́ con el objetivo and Knowledge Discovery, ser. LNAI, vol. 1263. Springer, 1997, pp.
78–87.
de obtener una población élite con la atipicidad [3] media [6] S. D. Bay and M. J. Pazzani, “Detecting group differences: Mining
más elevada. Esta población élite se actualiza en el operador contrast sets,” Data Mining and Knowledge Discovery, vol. 5, no. 3, pp.
de reinicialización, que se activa si la población actual no ha 213–246, 2001.
[7] G. Z. Dong and J. Y. Li, “Efficient Mining of Emerging Patterns:
sido capaz de cubrir ejemplos no cubiertos anteriormente por Discovering Trends and Differences,” in Proc. of the 5th ACM SIGKDD
un 5 % del total de las evaluaciones totales con el objetivo de International Conference on Knowledge Discovery and Data Mining.
evitar estancamientos en óptimos locales. ACM Press, 1999, pp. 43–52.
[8] A. M. Garcı́a-Vico, C. J. Carmona, D. Martı́n, M. Garcı́a-Borroto,
Finalmente, una vez termina el proceso evolutivo, se realiza and M. J. del Jesus, “An overview of emerging pattern mining in
un filtro de post-procesamiento con el fin de eliminar aquellas supervised descriptive rule discovery: Taxonomy, empirical study, trends
reglas que no tengan una calidad suficiente para el experto. and prospects,” WIREs: Data Mining and Knowledge Discovery, vol. 8,
no. 1, 2018.
En concreto, para el algoritmo MOEA-EFEP se proponen tres [9] L. Wang, H. Zhao, G. Dong, and J. Li, “On the complexity of finding
filtros diferentes: obtener patrones con un valor de confianza emerging patterns,” in Proc. of the 28th Annual International Computer
superior al 60 %, obtener sólo patrones minimales u obtener Software and Applications Conference, vol. 2, 2004, pp. 126–129.
[10] G. Z. Dong, J. Y. Li, and X. Zhang, “Discovering jumping emerging
sólo patrones maximales. patterns and experiments on real datasets,” in Proc. on International
La validez del método propuesto se estudia a través de un Database Conference Heterogeneous and Internet Databases, 1999, pp.
exhaustivo estudio experimental con 50 conjuntos de datos con 155–168.
[11] K. Ramamohanarao and H. Fan, “Patterns Based Classifiers,” World
tres objetivos diferentes: por un lado, se plantea la elección Wide Web, vol. 10, no. 1, pp. 71–83, 2007.
de la mejor representación del conocimiento; por otro, se [12] K. Deb, A. Pratap, S. Agrawal, and T. Meyarivan, “A fast and elitist
plantea la elección del mejor filtrado de post-procesamiento y, multiobjective genetic algorithm: NSGA-II,” IEEE Transactions Evolu-
tionary Computation, vol. 6, no. 2, pp. 182–197, 2002.
finalmente, se compara MOEA-EFEP con aquellos métodos [13] K. S. Leung, Y. Leung, L. So, and K. F. Yam, “Rule Learning in
más relevantes para EPM en función de su metodologı́a de Expert Systems Using Genetic Algorithm: 1, Concepts,” in Proc. of
extracción de patrones tal y como se expone en [8]. Todos los the 2nd International Conference on Fuzzy Logic and Neural Networks,
K. Jizuka, Ed., 1992, pp. 201–204.
resultados obtenidos han sido avalados mediante el uso de test
estadı́sticos no-paramétricos.
En el estudio experimental realizado se demuestra que la
capacidad de las reglas en forma normal disyuntiva para la
extracción de patrones emergentes con un mayor equilibrio

672
XIII Congreso Español
de Metaheurísticas,
Algoritmos Evolutivos y
Bioinspirados
(XIII MAEB)
MAEB 8.2: SESIÓN E SPECIAL:
A LGORITMOS PARALELOS
Organizadores:
E NRIQUE A LBA Y GABRIEL LUQUE
XIII Congreso Español en Metaheurı́sticas y Algoritmos Evolutivos y Bioinspirados

Explotación de Paralelismo Multinivel e Hı́brido en


Metaheurı́sticas Hı́bridas
José M. Cecilia, Baldomero Imbernón
Bioinformatics and High Performance Computing Research Group (BIO-HPC)
Polytechnic School, University Católica San Antonio of Murcia (UCAM)
Murcia, Spain
{jmcecilia,bimbernon}@ucam.edu

Javier Cuenca José-Matı́as Cutillas-Lozano, Domingo Giménez


Department of Engineering and Technology of Computers Department of Computing and Systems
University of Murcia University of Murcia
Murcia, Spain Murcia, Spain
jcuenca@um.es {josematias.cutillas,domingo}@um.es

Resumen—Los sistemas computacionales actuales están forma- Integrated Core), por lo que se está trabajando en la adaptación
dos por nodos que comprenden CPUs multicore junto con uno o y optimización de software para este tipo de sistemas hı́bridos,
varios coprocesadores (normalmente GPUs pero ocasionalmente y, en particular, hay trabajos sobre metaheurı́sticas para GPU
también MICs), de forma que se dispone de un sistema hı́brido
y heterogéneo. Por otro lado, el desarrollo de metaheurı́sticas [9], [10]. Además, el hardware sobre el que se trabaja es
hı́bridas y de hiperheurı́sticas que trabajan sobre ellas también hı́brido y heterogéneo, con elementos computacionales con
sigue una estructura hı́brida, en la que se puede explotar arquitecturas distintas, en distinto número y distinta velocidad,
paralelismo multinivel para llevar a cabo computaciones con y está organizado en muchos casos de forma jerárquica (un
distinto volumen de cómputo (heterogéneas). En este trabajo cluster con nodos hı́bridos multicore+GPU, GPUs organizadas
analizamos la combinación de paralelismo hı́brido y heterogéneo
a los dos niveles, de software y de hardware, en la aplicación en grids y bloques...).
de metaheurı́sticas hı́bridas. Se realizan experimentos con la Esta situación propicia la lı́nea de trabajo que se presenta:
aplicación de metaheurı́sticas a dos problemas, uno de docking análisis de la combinación de las caracterı́sticas hı́bridas, hete-
de moléculas y otro de modelos de autoregresión vectorial, sobre rogéneas y jerárquicas de software y hardware para explotar el
nodos multicore+multiGPU. paralelismo y obtener beneficios en cuanto a reducir el tiempo
Index Terms—metaheurı́sticas, hiperheurı́sticas, paralelismo
hı́brido, paralelismo heterogéneo, docking de moléculas, modelos de ejecución o mejorar las soluciones obtenidas.
de autoregresión vectorial Trabajamos con metaheurı́sticas hı́bridas desarrolladas a
partir de un esquema parametrizado [11], que combina carac-
I. I NTRODUCCI ÓN terı́sticas de metaheurı́sticas distribuidas y de búsqueda local, y
se ha aplicado a diversidad de problemas: p-hub, asignación de
Las metaheurı́sticas se utilizan para la aproximación de
tareas a procesos, y modelado de ecuaciones simultáneas [11];
soluciones de problemas de gran dificultad computacional [1]–
consumo de electricidad en explotación de pozos de agua [12];
[3]. Hay variedad de métodos metaheurı́sticos, básicamente
determinación de constantes en ecuaciones cinéticas [13], etc.
agrupados en dos clases: distribuidos o basados en poblaciones
Además, al estar el esquema parametrizado, se puede utilizar
[4], [5], y de búsqueda local, y también métodos hı́bridos
para diseñar hiperheurı́sticas que buscan en el espacio de los
[6], [7] que combinan las caracterı́sticas de diferentes me-
parámetros que determinan las metaheurı́sticas [14].
taheurı́sticas para una mejor adaptación al problema con el
El esquema parametrizado se puede ampliar a esquemas
que se trabaja. Ası́, el software es hı́brido al combinar distintas
paralelos que incluyen parámetros de paralelismo dependiendo
técnicas, y heterogéneo en el sentido de que cada uno de sus
del sistema computacional destino (memoria compartida [15]
componentes tiene un coste computacional distinto.
o paso de mensajes [16]), con una paralelización unificada
Con la aparición de la computación paralela se han de-
para las distintas metaheurı́sticas hı́bridas del esquema.
sarrollado versiones paralelas de las metaheurı́sticas, o nuevas
Analizamos la adaptación del esquema metaheurı́stico
metaheurı́sticas paralelas [8]. Los nodos de la mayorı́a de
parametrizado a sistemas más complejos: nodos multico-
los sistemas computacionales actuales están formados por
re+multiGPU, posiblemente con GPUs de distintas carac-
sistemas multinúcleo junto con coprocesadores, que son prin-
terı́sticas. Y los problemas a los que se aplican las me-
cipalmente GPUs (Graphics Processing Unit)) y MICs (Many
taheurı́sticas tienen una caracterı́stica que facilita el uso efi-
Subvencionado por MINECO y fondos FEDER de la Comisión Europea, ciente de la alta capacidad computacional de los coprocesa-
TIN2015-66972-C5-3-R y TIN2016-78799-P (AEI/FEDER, UE). dores: alto coste de cálculo del fitness, que puede delegarse a

675
XVIII Conferencia de la Asociación Española para la Inteligencia Artificial

las GPUs. III. E SQUEMAS PARALELOS PARA


Se utilizan dos problemas: docking de moléculas y mode- MULTICORE + MULTI GPU
lado de autoregresión vectorial; y un tercer problema es la
búsqueda por medio de hiperheurı́sticas (programadas como Hemos desarrollado esquemas paralelos para memoria com-
metaheurı́sticas) de metaheurı́sticas apropiadas para estos dos partida [15] y paso de mensajes [16], y hemos analizado
problemas básicos. El mayor coste computacional reside en la utilización de esquemas parametrizados en la resolución
el cálculo del fitness, y en las hiperheurı́sticas el cálculo del de problemas particulares en nodos con coprocesadores. Por
fitness se hace a su vez con la aplicación de metaheurı́sticas ejemplo, en [17] se analiza la aplicación de hiperheurı́sticas
al problema básico. al problema de docking en un MIC. El esquema paralelo
El resto del trabajo está estructurado de la siguiente manera. es el de memoria compartida, pero los MIC pueden ser
La Sección II muestra el esquema metaheurı́stico parame- considerados manycore más que multicore al ser el número de
trizado que se utiliza, y se comentan las caracterı́sticas de procesos mucho más elevado, y esto hace que la explotación
las hiperheurı́sticas sobre este esquema. Las posibilidades del paralelismo a varios niveles (en la hiperheurı́stica y las
de paralelización del esquema para multicore+multiGPU se metaheurı́sticas donde ella busca) sea más adecuado para estos
comentan en la Sección III. Los dos problemas básicos usados sistemas.
como casos de prueba se describen en la Sección IV, y la En el caso de la explotación de paralelismo de GPUs el
Sección V muestra algunos resultados experimentales en la esquema paralelo es distinto de los dos anteriores, pues la
aplicación a los dos problemas básicos y a hiperheurı́sticas programación en GPUs sigue un modelo SIMD. El desarrollo
para el problema del docking. Las conclusiones y posibles de metaheurı́sticas para GPUs es un campo de investigación
trabajos futuros se resumen en la Sección VI. actual [9], [10], y hemos utilizado el esquema parametrizado
para el problema del docking en nodos con GPUs, ya sean
II. E SQUEMA PARAMETRIZADO DE M ETAHEUR ÍSTICAS E locales o virtualizadas [18], lo que acelera la computación y
H IPERHEUR ÍSTICAS facilita encontrar soluciones mejores en menor tiempo.
Resumimos las ideas generales de los esquemas me- En este trabajo analizamos por primera vez el diseño de
taheurı́sticos parametrizados usados en este trabajo. Se pueden metaheurı́sticas parametrizadas de forma general para explotar
encontrar más detalles del esquema, de su aplicación a varios toda la capacidad computacional que proporcionan los nodos
problemas de optimización y un estudio estadı́stico de la multicore+multiGPU. Para analizar el problema de forma
influencia de los parámetros en [11]. El esquema se muestra en general consideramos dos problemas, que además tienen alto
el Algoritmo 1. Incluye Parámetros Metaheurı́sticos en cada coste computacional, lo que es necesario para que la explota-
una de las funciones básicas. No es un esquema general que ción eficiente de los coprocesadores muestre todo su potencial.
incluya todas las posibles metaheurı́sticas (incontables) sino Las metaheurı́sticas y las hiperheurı́sticas que trabajan sobre
que depende de la implementación de las funciones básicas ellas siguen el mismo esquema parametrizado (algoritmos 1 y
y de los parámetros que se incluyan en ellas. Instancias 2), con diferencias en la implementación de las funciones y
concretas de los parámetros pueden dar lugar a metaheurı́sticas los parámetros, dependiendo del problema subyacente a que
básicas o a hibridaciones suyas. Por ejemplo, en [11] se se aplican. Ası́, la versión de memoria compartida es común
implementan versiones de Algoritmos Genéticos, Búsqueda a metaheurı́sticas e hyperheurı́sticas (Algoritmo 3), y consiste
Dispersa y GRASP (Greedy Randomized Adaptive Search en la paralelización independiente de las funciones básicas
Procedure), y otras de las referencias mencionadas incluyen del esquema, con inclusión de parámetros de paralelismo
también Búsqueda Tabú. La mayorı́a de los parámetros son que determinan el número de hilos a usar en cada función.
generales para el esquema, pero puede haber algunos propios Hay funciones donde se tratan varios elementos dentro de un
del problema al que se aplican las metaheurı́sticas. Una bucle, y se paraleliza el bucle estableciendo un determinado
descripción detallada se encuentra en las referencias previas. número de hilos. En las funciones de mejora se tratan varios
Las hiperheurı́sticas que consideramos son a la vez me- elementos, en un bucle que se paraleliza con un cierto número
taheurı́sticas con el mismo esquema parametrizado, pero el de hilos, y para cada elemento se analiza su vecindad, lo que
significado de los parámetros es distinto, ya que depende se hace con otro bucle con un número de hilos diferente en
del problema al que se aplican, que en este caso es el un segundo nivel de paralelismo. Como las hiperheurı́sticas
de búsqueda de metaheurı́sticas hı́bridas satisfactorias para llaman a metaheurı́sticas para el cálculo del fitness, llegamos
el problema básico considerado. El esquema metaheurı́stico a tener en algunos casos hasta cuatro niveles de paralelismo, y
para implementar hiperheurı́sticas se muestra en el Algorit- se podrı́a determinar en número de hilos en cada nivel para la
mo 2. Es igual al del Algoritmo 1 con la única diferencia mayor reducción del tiempo de ejecución teniendo en cuenta
los elementos con los que se trabaja (ahora son vectores las caracterı́sticas del sistema computacional [17].
de parámetros metaheurı́sticos) y el fitness asociado a cada En sistemas con paralelismo hı́brido multicore+multiGPU el
elemento (metaheurı́stica), que se obtiene con la aplicación código correrá en la CPU, que delegará a GPU partes con alto
de la metaheurı́stica representada por el vector de parámetros coste computacional. El paralelismo de GPU puede explotarse
metaheurı́sticos a uno o varios problemas de entrenamiento. a distintos niveles de entre los que aparecen en el esquema de
Algunas formas de calcular el fitness se discuten en [14]. memoria compartida. Los datos con los que trabajar en GPU se

676
XIII Congreso Español en Metaheurı́sticas y Algoritmos Evolutivos y Bioinspirados
Algorithm 1 Esquema metaheurı́stico parametrizado
Initialize(S,ParamIni) //Generación del conjunto inicial, posiblemente con mejora de elementos
while (not EndCondition(S,ParamEnd)) do
SS=Select(S,ParamSel) //Selección de elementos para combinación
SS1=Combine(SS,ParamCom) //Combinación de pares de elementos
SS2=Improve(S,SS1,ParamImp) //Mejora de algunos elementos, posiblemente con diversificación
S=Include(S,SS1,SS2,ParamInc) //Actualización del conjunto de referencia
end while

Algorithm 2 Esquema metaheurı́stico parametrizado para la implementación de hiperheurı́sticas


Initialize(S,ParamIni) //Generación de un conjunto inicial de metaheurı́sticas
while (not EndCondition(S,ParamEnd)) do
SS=Select(S,ParamSel) //Selección de metaheurı́sticas para combinación
SS1=Combine(SS,ParamCom) //Combinación de pares de metaheurı́sticas para obtener nuevas metaheurı́sticas
SS2=Improve(S,SS1,ParamImp) //Mejora y diversificación de metaheurı́sticas para obtener otras más apropiadas
para el problema con que se trabaja
S=Include(S,SS1,SS2,ParamInc) //Actualización del conjunto de metaheurı́sticas
end while

Algorithm 3 Versión de Memoria Compartida del esquema metaheurı́stico parametrizado


Initialize(S,ParamIni,HilosIni) //Número de hilos en la generación, y número de hilos sobre los elementos a
mejorar y un segundo nivel para hilos que analizan la vecindad
while (not EndCondition(S,ParamEnd)) do
SS=Select(S,ParamSel,HilosSel) //Número de hilos en bucle de selección
SS1=Combine(SS,ParamCom,HilosCom) //Número de hilos en bucle de combinación
SS2=Improve(S,SS1,ParamImp,HilosImp) //Número de hilos sobre los elementos a mejorar o diversificar, y un
segundo nivel para hilos que analizan la vecindad
S=Include(S,SS1,SS2,ParamInc,HilosInc) //Número de hilos en bucles para tratar los elementos a incluir
end while

transfieren de CPU a GPU, y los resultados a la inversa, y las Además, algunas funciones conllevan comparaciones y
transferencias CPU-GPU pueden ser costosas, por lo que habrá bifurcaciones en el análisis de la vecindad, por lo que,
que realizar implementaciones donde se solapen computación de nuevo, no tenemos un modelo SIMD.
y transferencias, y además el volumen de trabajo a realizar en En un siguiente nivel las GPUs se utilizarı́an para el
GPU en cada llamada debe ser grande. Algunos niveles a los cálculo del fitness. Como en algunas funciones hay que
que pueden trabajar las GPUs en el esquema del Algoritmo 3 calcular el fitness de los objetos obtenidos (en la gene-
son: ración inicial, al combinar, al analizar vecindades en las
funciones de mejora), se pueden agrupar los cálculos de
El mayor nivel corresponde al esquema de islas, con los fitness de todos los elementos, que se realizarı́an de
una isla por GPU en un sistema multicore+multiGPU, nuevo en un bucle, con cada hilo delegando el cálculo de
dividiendo los conjuntos en subconjuntos y asignando un elemento a la GPU que tiene asociada. De esta forma
cada subconjunto a una GPU. El trabajo que se delega a el trabajo que realizan las GPUs puede seguir el modelo
las GPU es de propsito general y no sigue el modelo SIMD si el cálculo del fitness se realiza a través de
SIMD, que es el más adecuado para obtener buenas funciones matriciales, como es el caso de los problemas
prestaciones en GPU. con los que experimentamos en este trabajo.
Si bajamos a nivel de paralelización dentro de cada En un último nivel serı́an todas las GPUs las que co-
función básica, el esquema se ejecuta en CPU y las laboraran en el cálculo del fitness de cada individuo.
funciones trabajan sobre elementos por medio de bucles, Podrı́a ser una buena opción cuando este cálculo tenga
con cada iteración del bucle realizada por un hilo. Cada un alto coste computacional, lo que puede ocurrir con
hilo puede tener asociada una GPU a la que delega el las hiperheurı́sticas, donde el cálculo conlleva la aplica-
tratamiento del elemento, que se transfiere a la GPU, que ción completa de una metaheurı́stica a una instancia del
devuelve a CPU el resultado. Las funciones básicas tienen problema básico.
costes distintos, por lo que habrá que determinar para
cada una, dependiendo de cómo esté implementada, si es La mejor opción puede ser una combinación de las dos
conveniente delegar el trabajo a GPU o realizarlo en CPU. versiones intermedias, determinando el nivel al que trabajan las

677
XVIII Conferencia de la Asociación Española para la Inteligencia Artificial

GPU dependiendo del coste de la rutina básica y del número de IV-B. Modelos de Autoregresión Vectoriales
elementos que se trate en cada nivel. El Algoritmo 4 muestra Consideramos d parámetros de los que se han tomado
los puntos en los que se pueden usar las GPUs. Para cada valores en t instantes de tiempo. Los valores para el ins-
rutina se indica con CPU o GPU el componente donde se tante k, 1 ≤ k ≤ t, se almacenan en un vector y (k) =

ejecuta. Las rutinas sobre CPU usan paralelismo OpenMP. En (k) (k)
y1 , . . . , y d ∈ R1×d . Y los t vectores de datos se pueden
las rutinas de mejora hay que determinar en cuál de los dos
niveles de paralelismo es preferible utilizar las GPUs. organizar en una matriz Y ∈ Rt×d :
 
(1) (1)
Algorithm 4 Asignación de trabajo a CPU y GPU en y1 . . . yd
 . .. .. 
un esquema parametrizado de metaheurı́sticas para multico-  . . (1)
. . 


re+multiGPU (t)
y1
(t)
. . . yd
InitializeCPU(Sini,ParamIni)
ComputefitnessGPU(Sini,ParamIni) Consideramos también dependencias temporales con i ins-
ImproveGPU(Sini,Sref,ParamImpIni) //2 posibles niveles tantes de tiempo anteriores. Puede haber variables externas al
while not EndConditionCPU(Sref,ParamEndCon) do modelo, vector z, con e variables. La dependencia de vectores
SelectCPU(Sref,Ssel,ParamSel) de datos de un instante j en función de los vectores de datos
CombineCPU(Ssel,Scom,ParamCom) de instantes anteriores (hasta i para las variables internas y k
ComputefitnessGPU(Scom,ParamCom) para las externas) se puede representar como
DiversifyCPU(Sref,Scom,Sdiv,ParamDiv)
ComputefitnessGPU(Sdiv,ParamDiv) y (j) ≈ y (j−1) A1 + y (j−2) A2 + . . . + y (j−i) Ai +
ImproveGPU(Scom,Sdiv,ParamImp) //2 posibles niveles
IncludeCPU(Scom,Sdiv,Sref,ParamInc) z (j−1) B1 + z (j−2) B2 + . . . + z (j−k) Bk + a (2)
end while donde Al , 1 ≤ l ≤ i, son matrices de dimensión d × d que
representan la dependencia de los datos con los valores de l
instantes anteriores, Bl , 1 ≤ l ≤ k, son matrices de tamaño
IV. P ROBLEMAS B ÁSICOS
e × d, y a es un vector de términos independientes.
Se comentan las caracterı́sticas generales de los dos proble- Cada elemento del espacio de búsqueda de una metaheurı́sti-
mas de optimización que se han utilizado en los experimentos. ca viene dado por los valores de las matrices A, B y a, y el
fitness se obtiene con multiplicaciones matriciales y la norma
IV-A. Docking de Moléculas de la diferencia entre los valores de la serie temporal (ecuación
Se dispone de una molécula de gran dimensión (receptor) 1) y los que se obtienen en cada instante de tiempo utilizando
y otra menor (ligando), y se quiere encontrar la mejor forma los instantes anteriores y dichas matrices (ecuación 2) [20].
en que el ligando se acopla con el receptor, de acuerdo con Ası́, también ahora las operaciones son apropiadas para el
una función de scoring. En la bibliografı́a se encuentran varias modelo SIMD, pero las dimensiones (d, e, i, k) son bastante
funciones que se pueden usar [19], y en ellas se mide el acopla- menores que en el problema anterior.
miento considerando cada átomo en el receptor y el ligando,
con lo que son funciones de alto coste y con un esquema V. R ESULTADOS E XPERIMENTALES
de cómputo regular, que es apropiado para ser utilizado en Se resumen los resultados de los experimentos realizados en
GPU. Cada posición del ligando viene determinada por tres nodos computacionales con CPUs y GPUs de distintos tipos
coordenadas para indicar la posición en el espacio de un átomo y uno de ellos con varias GPUS:
de referencia, y otras tres para indicar los giros con respecto a marte: contiene un hexa-core CPU AMD Phenom II X6
esta referencia; además, el ligando puede tener puntos donde 1075T a 3.00 GHz, con arquitectura x86-64, 16 GB de
se puede flexionar. Ası́, cada elemento viene determinado por RAM, cachés privadas L1 y L2 de 64 KB y 512 KB, y
las variables que indican la posición del ligando. Además, una caché L3 de 6 MB compartida por todos los núcleos.
hay varias regiones independientes (spots) en la superficie Incluye una GPU NVidia GeForce GTX 480 (Fermi) con
del receptor donde el ligando puede acoplarse, por lo que la 1536 MB de memoria global y 480 núcleos CUDA (15
búsqueda en los spots se realiza de forma idependiente, lo Streaming Multiprocessors y 32 Streaming Processors por
que significa que las metaheurı́sticas realizan la búsqueda con SM).
poblaciones independientes para cada spot. Teniendo en cuenta saturno: tiene 4 CPU Intel Xeon E7530 (hexa-core) a
que el número de spots puede ser de unos cientos, y el número 1.87 GHz, con arquitectura x86-64, 32 GB de RAM,
de átomos de receptor y ligando de unos miles y unos cientos, cachés privadas L1 y L2 de 32 KB y 256 KB por núcleo,
el coste computacional de la aplicación de metaheurı́sticas y una caché L3 de 12 MB compartida por los núcleos
a este problema es alto, y es conveniente la utilización de de cada socket. Incluye una GPU NVidia Tesla K20c
sistemas de altas prestaciones del tipo multicore+multiGPU, (Kepler) con 4800 MB de memoria global y 2496 núcleos
posiblemente con GPUs virtualizadas para disponer de mayor CUDA (13 Streaming Multiprocessors y 192 Streaming
potencia computacional [18]. Processors por SM).

678
XIII Congreso Español en Metaheurı́sticas y Algoritmos Evolutivos y Bioinspirados

jupiter: con 2 CPU Intel Xeon E5-2620 (hexa-core) a 1x1x6 6x1x1 3x2x1 2x3x1 1x6x1
2.00 GHz, con arquitectura x86-64, 32 GB de memoria 800
RAM, cachés privadas L1 y L2 de 32 KB y 256 KB 600
por núcleo, y una caché L3 de 15 MB compartida por 400
los núcleos en cada socket. Incluye 6 GPUs: 2 NVidia 200
Tesla C2075 (Fermi) con 5375 MB de memoria global y 0
448 núcleos CUDA (14 Streaming Multiprocessors y 32 venus marte jupiter saturno
Streaming Processors per SM), y 4 GPUs en dos placas,
cada una es una con 2 NVidia GeForce GTX 590 (Fermi) Figura 1. Tiempo de ejecución (segundos) con la versión de memoria
con 1536 MB de memoria global y 512 núcleos CUDA compartida para una hiperheurı́stica, con diferentes combinaciones de número
(16 Streaming Multiprocessors y 32 Streaming Processors de hilos en tres niveles de paralelismo, con un total de seis hilos y en los
cuatro nodos considerados.
por SM).
venus: con 2 CPU Intel Xeon E5-2620 (hexa-core) a
2.40 GHz, arquitectura x86-64, 64 GB de memoria RAM, Tabla II
C OMPARACI ÓN DEL TIEMPO DE EJECUCI ÓN ( EN SEGUNDOS ) DE TRES
cachés privadas L1 y L2 de 32 KB y 256 KB por núcleo, y HIPERHEUR ÍSTICAS CON PARALELISMO DE MEMORIA COMPARTIDA EN
una caché L3 de 15 MB compartida por todos los núcleos CPU Y CON PARALELISMO GPU, EN LOS CUATRO NODOS CONSIDERADOS .
de un socket. Incluye una GPU NVidia GeForce GT 640
H1 H2 H3
(Kepler) con 1024 MB de Global Memory y 384 núcleos marte
CUDA (2 Streaming Multiprocessors y 192 Streaming multicore 13035 4541 23957
Processors por SM). multicore+GPU 903 335 1348
CPU/GPU 14.44 13.56 17.77
La Tabla I compara los tiempos obtenidos en jupiter con venus
paralelismo GPU (sólo se usa una Tesla C2075) y con CPU multicore 4021 1423 6346
con un núcleo, para seis metaheurı́sticas hı́bridas aplicadas al multicore+GPU 3197 1857 5065
CPU/GPU 1.26 0.77 9.67
problema de docking de moléculas con el par receptor-ligando jupiter
COMT (se pueden consultar los detalles en [21]). Se alcanza multicore 8045 3509 14115
un speed-up de GPU con respecto a CPU de alrededor de 43. multicore+GPU 990 514 1459
CPU/GPU 8.13 6.83 9.67
La ventaja de usar GPUs es clara, incluso en este caso en que saturno
la GPU se usa sólo en el cálculo de la función de scoring. multicore 6150 1595 8582
multicore+GPU 563 200 823
CPU/GPU 10.92 7.98 10.43
Tabla I
T IEMPO DE EJECUCI ÓN ( EN SEGUNDOS ) DE VERSIONES CPU Y GPU, Y
SPEED - UP DE GPU RESPECTO A CPU, PARA DIFERENTES
METAHEUR ÍSTICAS APLICADAS AL PAR RECEPTOR - LIGANDO COMT, EN
JUPITER
en tres niveles de paralelismo, con un total de seis hilos
y en los cuatro nodos considerados. Se obtienen resultados
Metaheuristic CPU GPU CPU/GPU similares con otras hiperheurı́sticas. La mejor combinación
M1 140.48 10.42 39.35
M2 193.67 13.81 43.55
de hilos es 1 × 1 × 6 en todos los nodos, con algunas
M3 1,911.52 9.62 54.16 diferencias en la comparación de las distintas combinaciones
M4 209.56 9.59 34.43 dependiendo del nodo, lo que es normal dada la distinta
M5 262.65 8.55 35.51
M6 1,379.93 10.39 53.89
capacidad computacional de los nodos y que hay aleatoriedad
en las ejecuciones. Para evitar la aleatoriedad se deberı́an
El par con el que se ha experimentado para los resultados realizar varias ejecuciones por cada combinación, pero, dado
de la Tabla I es pequeño pero los tiempos de ejecución pueden el alto coste computacional, esto conllevarı́a unos tiempos de
ser grandes dependiendo de la metaheurı́stica. En el caso de experimentación excesivos.
las hiperheurı́sticas, el tiempo crece enormemente dado que se La Tabla II compara el tiempo de ejecución de tres hi-
busca en un espacio de metaheurı́sticas. En una hiperheurı́stica perheurı́sticas cuando se explota paralelismo de memoria
se puede tener hasta cuatro niveles de paralelismo (dos en compartida con un número de hilos igual al número de cores
la hiperheurı́stica y hasta dos en la metaheurı́stica), por lo en el nodo y cuando se usa GPU para el cálculo de las
que es necesario experimentar con las distintas combinaciones funciones de scoring. Se ha usado de nuevo el par COMT.
del número de hilos en los cuatro niveles para obtener la Se comprueba que el tiempo de ejecución es mucho mayor
mejor combinación. Para simplificar la experimentación dado que el de una única metaheurı́stica, y el tiempo de ejecución
que el tiempo de cada experimento es bastante largo, hemos con la explotación del paralelismo hı́brido multicore+GPU es
considerado los tres niveles de paralelismo de mayor nivel, en general mucho menor que con paralelismo de memoria
con lo que las metaheurı́sticas usan sólo paralelismo de un compartida. Sólo en el caso de venus, que tiene la CPU más
nivel. La Figura 1 compara el tiempo de ejecución (segundos) rápida y la GPU más lenta, son los tiempos comparables.
con la versión de memoria compartida para una hiperheurı́stica El uso de GPU también puede dar resultados satisfactorios
particular, con diferentes combinaciones de número de hilos para el problema de modelos de autoregresión vectorial, pero

679
XVIII Conferencia de la Asociación Española para la Inteligencia Artificial

en este caso el coste computacional es mucho menor que en optimización la forma óptima de utilizar el esquema: número
el docking de moléculas, por lo que el uso de GPU resulta de hilos y forma de uso de las GPUs en cada nivel.
ventajoso sólo para problemas muy grandes que seguramente
R EFERENCIAS
no se corresponden con casos de aplicaciones reales. Por
ejemplo, en jupiter, cuando se utiliza una única GPU en el [1] Z. Michalewicz and D. B. Fogel, How to Solve It: Modern Heuristics.
Springer, 2002.
nivel más bajo (cálculo del fitness, que en este caso es una [2] J. Hromkovič, Algorithmics for Hard Problems. Springer, second ed.,
multiplicación de matrices y el cálculo de la norma), con 2003.
valores de los parámetros t = 200, d = 4, e = 2, i = 3 [3] J. Dréo, A. Pétrowski, P. Siarry, and E. Taillard, Metaheuristics for Hard
Optimization. Springer, 2005.
y k = 2 el speed-up de GPU respecto a CPU es 0.83, con lo [4] F. Glover and G. A. Kochenberger, Handbook of Metaheuristics. Kluwer,
que es preferible no usar GPU. Pero para problemas mayores 2003.
el speed-up aumenta: para d = 5, e = 3, i = 3 y k = 2 es [5] E.-G. Talbi, Metaheuristics - From Design to Implementation. New
York: Wiley, 2009.
0.92, y para d = 5, e = 3, ty = 4 y tz = 2 llega a 1.25. [6] G. R. Raidl, “A unified view on hybrid metaheuristics,” in Hybrid
El uso de más GPUs reduce el tiempo de ejecución sólo Metaheuristics, Third International Workshop, LNCS, vol. 4030, pp. 1–
para tamaños muy grandes, por lo que para este problema es 12, October 2006.
[7] C. Blum, J. Puchinger, G. R. Raidl, and A. Roli, “Hybrid metaheuristics
necesario optimizar más la utilización de GPUs. Un ejemplo es in combinatorial optimization: A survey,” Appl. Soft Comput., vol. 11,
la asignación dinámica de trabajo. En una ejecución en jupiter no. 6, pp. 4135–4151, 2011.
con cuatro GPUs (dos de cada tipo) y tamaños mayores que [8] E. Alba, Parallel Metaheuristics: A New Class of Algorithms. New York:
Wiley-Interscience, 2005.
en el experimento anterior (t = 500), el tiempo de ejecución [9] E.-G. Talbi and G. Hasle, “Metaheuristics on GPUs,” J. Parallel Distrib.
fue 1854 segundos cuando se asignó el cálculo del fitness a Comput., vol. 73, no. 1, pp. 1–3, 2013.
las GPUs con el mismo número de elementos para cada GPU. [10] M. Essaid, L. Idoumghar, J. Lepagnot, and M. Brévilliers, “GPU para-
llelization strategies for metaheuristics: a survey,” International Journal
Al asignar de forma estática el doble de elementos a las GPUs of Parallel, Emergent and Distributed Systems, vol. 0, no. 0, pp. 1–26,
más rápidas (en teorı́a son el doble de rápidas) el tiempo subió 2018.
a 2249 segundos. Y el menor tiempo se obtuvo con asignación [11] F. Almeida, D. Giménez, J.-J. López-Espı́n, and M. Pérez-Pérez, “Para-
meterised schemes of metaheuristics: basic ideas and applications with
dinámica, con 1598 segundos. Genetic algorithms, Scatter Search and GRASP,” IEEE Transactions on
Systems, Man and Cybernetics, Part A: Systems and Humans, vol. 43,
no. 3, pp. 570–586, 2013.
VI. C ONCLUSIONES Y T RABAJOS F UTUROS [12] L.-G. Cutillas-Lozano, J.-M. Cutillas-Lozano, and D. Giménez, “Mode-
ling shared-memory metaheuristic schemes for electricity consumption,”
En este trabajo se discute la utilización de paralelismo in Distributed Computing and Artificial Intelligence - 9th International
hı́brido multicore+multiGPU en la aplicación de metaheurı́sti- Conference, pp. 33–40, 2012.
cas hı́bridas basadas en un esquema parametrizado de me- [13] J. Cutillas-Lozano and D. Giménez, “Determination of the kinetic cons-
tants of a chemical reaction in heterogeneous phase using parameterized
taheurı́sticas. En el esquema hay paralelismo en distintos nive- metaheuristics,” in Proceedings of the International Conference on
les, y se analiza en qué niveles serı́a conveniente la utilización Computational Science, pp. 787–796, 2013.
de GPUs. Además, sobre el esquema se pueden desarrollar [14] J. Cutillas-Lozano, D. Giménez, and F. Almeida, “Hyperheuristics based
on parametrized metaheuristic schemes,” in Proceedings of the Genetic
hiperheurı́sticas que se implementan como metaheurı́sticas con and Evolutionary Computation Conference, pp. 361–368, 2015.
ese esquema y que buscan en el espacio de metaheurı́sticas [15] F. Almeida, D. Giménez, and J.-J. López-Espı́n, “A parameterized
para un problema básico implementadas con el mismo es- shared-memory scheme for parameterized metaheuristics,” The Journal
of Supercomputing, vol. 58, no. 3, pp. 292–301, 2011.
quema. Como el esquema paralelo parametrizado tiene dos [16] J. Cutillas-Lozano and D. Giménez, “Optimizing a parameterized
niveles de paralelismo, la implementación de hiperheurı́sticas message-passing metaheuristic scheme on a heterogeneous cluster,” Soft
da lugar a un máximo de cuatro niveles, y se debe analizar la Comput., vol. 21, no. 19, pp. 5557–5572, 2017.
[17] J. M. Cecilia, J. Cutillas-Lozano, D. Giménez, and B. Imbernón, “Ex-
mejor combinación de hilos en cada nivel y en qué partes del ploiting multilevel parallelism on a many-core system for the application
esquema paralelo utilizar GPU. of hyperheuristics to a molecular docking problem,” The Journal of
Supercomputing, vol. 74, no. 5, pp. 1803–1814, 2018.
Se han considerado dos problemas básicos para analizar el [18] B. Imbernón, J. Prades, D. Giménez, J. M. Cecilia, and F. Silla,
esquema: docking de moléculas y modelos de autoregresión “Enhancing large-scale docking simulation on heterogeneous systems:
vectorial. Los dos problemas tienen alto coste computacional An MPI vs rcuda study,” Future Generation Comp. Syst., vol. 79, pp. 26–
37, 2018.
y el cálculo del fitness se hace con computación matricial [19] G. Schneider, “Virtual screening and fast automated docking methods,”
que sigue un esquema SIMD, por lo que se puede explotar Drug Discovery Today, vol. 7, pp. 64–70, Jan. 2002.
paralelismo GPU. Para el primer problema, dado el tamaño [20] A. L. Castaño, J. Cuenca, J.-M. Cutillas-Lozano, D. Giménez, J. J.
López-Espı́n, and A. Pérez-Bernabeu, “Parallelism on hybrid metaheu-
de las moléculas con las que se realiza el docking, el tiempo ristics for vector autoregression models,” in International Conference on
de ejecución es muy elevado, y se alcanza una gran reducción High Performance Computing & Simulation, August 2018.
del tiempo con respecto a CPU cuando se utiliza paralelismo [21] B. Imbernón, J. M. Cecilia, and D. Giménez, “Enhancing metaheuristic-
based virtual screening methods on massively parallel and heterogeneous
hı́brido multicore+GPU. En el otro problema, el uso de GPU systems,” in Proceedings of the 7th International Workshop on Program-
es ventajoso sólo para problemas grandes, que no se corres- ming Models and Applications for Multicores and Manycores, pp. 50–58,
ponden con aplicaciones en uso. 2016.
El mismo esquema puede ser utilizado en otros problemas,
y estamos centrando nuestra investigación en el análisis de
cómo determinar en función de los costes del problema de

680
XIII Congreso Español en Metaheurı́sticas y Algoritmos Evolutivos y Bioinspirados

Optimización evolutiva multiobjetivo distribuida


mediante aplicación selectiva de operadores
Pablo Garcı́a-Sánchez Julio Ortega, Jesús González, Pedro A. Castillo,
Departamento de Ingenierı́a Informática Juan Julián Merelo, Antonio M. Mora y Antonio Fernández-Ares
Universidad de Cádiz Departamento de Arquitectura y Tecnologı́a de Computadores
Puerto Real, España Universidad de Granada
pablo.garciasanchez@uca.es Granada, España
julio@ugr.es

Resumen—Este trabajo presenta un nuevo enfoque, llamado Los EAs se han extendido a la optimización multiobjetivo a
aplicación selectiva de operadores, para hacer frente a problemas través de un buen número de Algoritmos Evolutivos Multiob-
no separables en el entorno de los algoritmos co-evolutivos mul- jetivo (MOEAs, por sus siglas en inglés) [5]. Se han utilizado
tiobjetivo: en lugar de compartir secciones de individuos, cada
procesador aplica los operadores de variación a un subconjunto diferentes enfoques para paralelizar los EAs, ya que cada
especı́fico de todo el individuo. Esto evita pasos adicionales para individuo puede ser considerado como una unidad indepen-
recomponer los individuos completos de otras islas antes de ser diente [6], [7]. Los métodos clásicos, como los EAs paralelos
evaluados. globales (Maestro-Esclavo), o los algoritmos espacialmente
En este trabajo se pretende demostrar que la decisión au- estructurados (Modelo de isla o EAs celulares) se han aplicado
tomática del tamaño de la sección solapada, es capaz de obtener
mejores resultados que la utilización del mismo tamaño indepen-
con éxito en el pasado [8]. Sin embargo, en el caso de los
dientemente del número de islas. Para ello se ha comparado con MOEAs, estos enfoques [2] necesitan ocuparse de todo el
otras técnicas evolutivas colaborativas considerando diferentes conjunto de soluciones, el FP. Esto implica el uso de diferentes
números de islas y problemas. El análisis de los resultados mecanismos de distribución y compartición, ya que existe un
experimentales obtenidos, utilizando diferentes métricas, muestra equilibrio entre la mejora obtenida a partir de la paralelización
que nuestro enfoque puede proporcionar mejoras estadı́sticamen-
te significativas con respecto al algoritmo base en problemas
y la necesidad de recombinar globalmente los resultados para
multiobjetivo de alta dimensionalidad. identificar con precisión el FP [9].
Index Terms—Algoritmos multiobjetivo, NSGA-II, modelo de Las MOPs del mundo real normalmente requieren un alto
islas, algoritmos evolutivos distribuidos número de variables de decisión, lo que significa que los
MOEAs necesitan tratar con individuos grandes y gastar
un tiempo significativo adicional para el cruce, mutación y
I. I NTRODUCCI ÓN
migración. Diferentes autores han propuesto métodos para
Los problemas de optimización multiobjetivo (MOP por sus dividir el espacio de decisión (el cromosoma) para mejorar
siglas en inglés) son aquellos en los que varios objetivos tienen el rendimiento y la calidad de las soluciones. En este aspecto,
que ser optimizados a la vez [1]. Resolver un MOP implica el modelo de co-evolución es un modelo distribuido por
optimizar una función compuesta por varias funciones de dimensiones en el que un problema de alta dimensionalidad se
coste independientes, una por objetivo. En estos problemas el divide en otros de dimensiones más bajas [7], que evolucionan
objetivo es obtener un conjunto de soluciones que sean mejores por separado. Un ejemplo de aplicación de esta técnica fue
que el resto, considerando todos los objetivos; este conjunto descrito en [10]. El método presentado en ese trabajo involu-
se conoce como el Frente de Pareto (FP). Las soluciones en cra a diferentes trabajadores que evolucionan subpoblaciones
este conjunto son no dominadas, lo que significa que no hay creadas y recombinadas por un proceso maestro, el cual realiza
otra solución que sea igual o mejor para todos los objetivos. diferentes alternativas de recombinación de las partes devueltas
Este aspecto de la búsqueda de soluciones no dominadas, por los procesos de los trabajadores.
ası́ como, en muchos casos, el tamaño del propio espacio de Un enfoque similar utilizado para resolver este tipo de
búsqueda, implica una alta demanda de tiempo computacional, problemas es el de la aplicación de la Aplicación Selectiva de
lo que lleva a la propuesta de métodos paralelos y distribuidos Operadores (ASO) presentado en este documento. En este ca-
para resolverlos [2], [3], uno de los cuales son los algoritmos so, cada isla se ocupa de la totalidad del cromosoma, pero sólo
evolutivos (EAs) [4]. modifica un fragmento en la fase de cruce y mutación en fun-
ción del número de islas, utilizando todo el cromosoma para el
Trabajo financiado por los proyectos SPIP2017-02116 (Dirección General cálculo del fitness. Esto permite hacer frente a problemas que
de Tráfico), EphemeCH TIN2014-56494-C4-3-P, TIN2015-67020-P, DeepBio no se pueden descomponer. En nuestro trabajo anterior [11]
TIN2017-85727-C4-2-P y TEC2015-68752 (Ministerio de Economı́a y Com- utilizamos este método de manera preliminar. En ese trabajo
petitividad y Fondos FEDER) y PR2018-056 (Programa de Fomento e Impulso
de la Investigación y de la Transferencia de la Universidad de Cádiz 2018- demostramos que la aplicación de los operadores de variación
2019). sólo sobre secciones especı́ficas de todo el cromosoma mejora

681
XVIII Conferencia de la Asociación Española para la Inteligencia Artificial

la calidad de las soluciones en el mismo tiempo de cálculo para método de solapamiento, fue utilizado en primer lugar en el
un algoritmo multi-objetivo basado en islas. Además, en lugar trabajo de Dorronsoro et al. [18], obteniendo un rendimiento
de hacer que cada isla se centre en un subconjunto disjunto del superlinear en varios casos. Recientemente, este enfoque tam-
cromosoma, el uso de secciones solapadas (compartidas) del bién ha sido probado utilizando un algoritmo de optimización
cromosoma puede mejorar la calidad de las soluciones cuando de enjambre de partı́culas (PSO) [19], obteniendo también
se aumenta el número de islas. mejoras significativas en la velocidad y calidad de la solución.
Esto nos motiva a continuar esta lı́nea de investigación El enfoque descrito por Dorronsoro et al. también ha sido
utilizando un entorno más adecuado: un cluster real con hasta utilizado por Kimovski et al. [10], pero implementando un
128 nodos y una parametrización más completa. Además de método maestro-esclavo que divide la población en varios
comparar los métodos anteriores en esta nueva configuración procesadores. Como en trabajos anteriores, cada nodo ejecuta
experimental, en este trabajo proponemos un nuevo método un MOEA paralelo que sólo afecta a una porción de los indi-
que automáticamente establece el tamaño del solapamiento. viduos y el proceso maestro recibe todas las subpoblaciones
en función del número de islas disponibles, comparándolo con a combinar cada cierto número de generaciones. Se utilizaron
versiones anteriores. hasta 8 procesadores y se compararon varias alternativas de
El resto del documento está organizado de la siguiente combinación. La principal diferencia de nuestro trabajo con
manera: después del estado del arte en MOEAs distribuidos y respecto a los trabajos anteriores es que nuestro enfoque no
co-evolutivos, la metodologı́a utilizada y los algoritmos com- difunde todas las soluciones a todas las islas para la recombi-
parados se describen en la Sección III. Después se presentan nación, sino sólo una solución a una isla aleatoria, necesitando
los resultados de los experimentos (Sección V), Finalmente, menos tiempo de comunicación. Además, los enfoques de
se discuten las conclusiones y el trabajo futuro 1 . Dorronsoro o Kimovsky limitaron el número máximo de islas
a 8, mientras que en este documento hemos utilizado hasta
II. E STADO DEL ARTE 128 islas.
Desde principios de la década de los 2000, los EAs dis- En nuestro trabajo anterior [11] utilizamos algunas de las
tribuidos y paralelos se han utilizado principalmente para ideas mencionadas anteriormente para comparar dos dMOEAs
aprovechar sistemas como clusters o grids [12]. Pero en el diferentes. El primero dividió el cromosoma en P secciones,
caso de los MOEAs, la distribución y paralelización es más siendo P el número de islas. Cada isla p sólo realizó la muta-
difı́cil que en los EAs con un solo objetivo. Esto se debe a ción y el cruce en esa parte (pth ) del cromosoma (la aplicación
que en diferentes pasos del algoritmo el conjunto completo de selectiva de operadores), mientras que el fitness se calculó
soluciones dependientes, el FP, debe ser gestionado como un usando el individuo entero. Después de un cierto número de
todo, dedicando tiempo a reunir a todos los individuos de los generaciones, los individuos fueron migrados al azar a otras
diferentes procesadores o islas. islas. Las métricas de rendimiento se calcularon al final de
Para resolver este problema, algunos autores han propuesto la ejecución. El segundo método, la aplicación selectiva de
el uso de enfoques Maestro-Esclavo. Por ejemplo, [13] com- operadores con islas solapadas, usaba las secciones pth−1 y
paró diferentes enfoques maestro-esclavo: sı́ncrono generacio- pth+1 de cada cromosoma, además de la parte pth . Usando la
nal, ası́ncrono generacional y ası́ncrono estacionario, siendo misma cantidad de tiempo, ambos métodos obtuvieron mejores
esta última la opción más prometedora. resultados que un algoritmo de baseline que se ocupaba de
También se ha explorado otro tipo de enfoques. El trabajo todo el cromosoma en cada isla para el cruce y la mutación.
de Deb et al. [14] fue uno de los primeros enfoques para Descubrimos que el rendimiento utilizando uno u otro método
MOEAs distribuidos (dMOEAs). En ese trabajo, el domi- depende del número de secciones de los individuos y del
nio de las soluciones se divide en las islas mediante una número de islas utilizadas. Esto nos motivó a encontrar un
transformación de coordenadas. En ese trabajo, los autores nuevo método automático para seleccionar este número de
concluyeron que dividir el espacio de búsqueda es una buena secciones del cromosoma a utilizar, dependiendo del número
idea, aunque lograr esto no es trivial. La división del espacio de islas. Además, se realizaron experimentos previos en un
de búsqueda ha sido explorada por otros investigadores, por modelo de isla sı́ncrona con un único procesador y con un
ejemplo, dividiendo la población en élites y subpoblaciones número limitado de islas (8, 32 y 128). En este trabajo se
de búsqueda [15], o separándola en procesadores por objetivo han utilizado 8, 16, 32, 64 y 128 islas, y en esta ocasión
[16]. Otros autores, como [17] utilizan la migración para los experimentos se han realizado en un cluster paralelo. Por
aceptar individuos basados en la diversidad, y emigran desde lo tanto, al mismo tiempo, estamos proponiendo un nuevo
áreas no superpobladas. método para dividir el espacio de búsqueda individual según
Abordar este tipo de problemas usando co-evolución coope- el número de subpoblaciones que evolucionan, y también
rativa también ha sido estudiado en varios trabajos con enfo- validando el enfoque anterior.
ques más cercanos al que aquı́ se presenta. El enfoque de III. M ETODOLOG ÍA
centrarse en una porción del cromosoma, como en nuestro
El objetivo de esta sección es explicar la metodologı́a que
1 Nota: una versión extendida de este artı́culo está siendo revisada en la hemos seguido para comparar las diferentes versiones de la
revista Applied Soft-Computing selección de secciones a modificar en cada isla.

682
XIII Congreso Español en Metaheurı́sticas y Algoritmos Evolutivos y Bioinspirados

En este trabajo analizamos varios algoritmos basados en IV. E XPERIMENTOS


ASO que hemos implementado con respecto un algoritmo En esta subsección se describen los indicadores de calidad
baseline multiobjetivo paralelo. Los métodos propuestos, uti- utilizados y los experimentos. Los indicadores de calidad
lizando diferentes esquemas de solapamiento, se basan en elegidos son:
NSGA-II, como casi todos los trabajos discutidos anterior- Hipervolumen (HV): mide el área formada por todas las
mente [13]–[18]. Por lo tanto, hemos utilizado un algoritmo soluciones no dominadas encontradas con respecto a un
NSGA-II básico distribuido sin solapar secciones como base- punto de referencia. Los valores más altos implican una
line (B). mejor calidad del FP.
Este algoritmo básico distribuye la población entre P islas; Distancia Generacional Invertida (IGD): calcula la distan-
después de un número fijo de generaciones, un individuo en cia del conjunto de soluciones obtenidas al FP óptimo.
una isla dada es migrado a otra isla al azar, evitando ası́ En esta métrica, cuanto más bajo, mejor.
sincronizar el FP global cada cierto número de generaciones Spread (S): Mide la dispersión entre soluciones, teniendo
como lo hacen otros métodos descritos en la Sección 2. Al en cuenta la distancia euclı́dea entre soluciones consecu-
final de cada ejecución, los FPs de todas las islas se agregan tivas. Como en la métrica anterior, cuanto menor sea el
en uno nuevo y se evalúan las medidas de calidad. valor, mejor, ya que implica soluciones distribuidas a lo
Se pueden idear diferentes alternativas de ASO para evo-
largo de todo el FP.
lucionar las subpoblaciones de acuerdo con el espacio de
Hemos elegido estas métricas no sólo porque se han utiliza-
decisión a explorar por cada isla. Al igual que en la baseline
do ampliamente, especialmente en algunos de los documentos
(B), un individuo es migrado a otra isla al azar después de un
presentados en la Sección II, como [13], [15], [17], [18],
número fijo de generaciones. En la nueva isla, este individuo
sino también porque cubren diferentes criterios de calidad. La
será considerado como uno más en la isla, cruzado y mutado
formulación matemática de estas métricas se puede encontrar
de la misma manera, dependiendo del identificador de la nueva
en [18].
isla (de 1 a P ). Nótese que, a diferencia de otros trabajos
El tamaño del cromosoma (L) es de 2048. También se
como los descritos por Talbi et al. [12], todas las islas tratan
ha comparado un número diferente de islas (P ): 8, 16, 32,
con cromosomas completos para el cálculo del fitness, por lo
64 y 128. Este número máximo de islas también ha sido
que nuestro enfoque puede tratar con problemas separables y
utilizado en un trabajo anterior en la literatura [17]. El cruce
no separables.
Concretamente hemos comparado las siguientes versiones: y la mutación elegidos, SBX y polinomial, también han sido
utilizados previamente por otros autores en [13].
ASO con islas disjuntas (D) En este enfoque, cada indi-
El benchmark ZDT [20] ha sido elegido debido a que es el
viduo del tamaño L se divide en trozos de P del tamaño
más utilizado en esta área [13]–[15], [17]. Este benchmark
L/P . Cada isla p sólo realiza crossover y mutación en
incluye varias funciones, con diferentes caracterı́sticas que
la parte pth de los individuos.
son representativas de los problemas de optimización del
ASO con secciones solapadas (S) Este enfoque es
mundo real. La formulación matemática de cada función está
similar al anterior, pero cada isla también utiliza los
disponible en [20].
trozos de p + 1 y p − 1 (usando el módulo) del individuo
El criterio utilizado para terminar un experimento ha sido
para el cruce y la migración. Por lo tanto, existe algún
el tiempo de ejecución: 100 segundos por ejecución. Según
tipo de solapamiento de las partes cruzadas y mutadas
Alba y Luque [21], otros criterios de parada como el número
entre las islas.
de evaluaciones necesarias para alcanzar una solución, pue-
ASO automático con secciones solapadas (A) Como
den ser engañosos dependiendo del escenario estudiado. En
en el método anterior, las secciones a tratar por los
nuestro caso hemos utilizado el tiempo en lugar del número
operadores se solapan, pero en lugar de usar una sección
de evaluaciones, en primer lugar porque nuestra hipótesis
extra a cada lado de la sección p (p + 1 y p − 1), usa
argumenta que el tiempo ahorrado en el cruce y la mutación se
fragmentos c a cada lado (p + c y p − c), siendo c un
puede gastar en mejorar las subpoblaciones y se pueden lograr
valor que depende del número de islas.
más operaciones y migraciones. Además, estamos utilizando
Como primera aproximación para calcular automáticamente
un número diferente de islas (con diferentes tamaños de
este valor, se han utilizado los resultados mostrados en [11]
subpoblación) y eso podrı́a llevar a diferentes tiempos de
como base para obtener c. En ese trabajo, el método de
ejecución, por lo que serı́a difı́cil comparar diferentes tiempos
solapamiento (cuando c = 1) obtuvo mejores resultados si
y calidad de soluciones al mismo tiempo.
el número de islas era mayor de 8. Por el contrario, cuando
Hemos usado el framework ECJ [22] para ejecutar los
el número de islas es pequeño, no es necesario solaparlas.
experimentos. El código fuente usado puede descargarse de
Por lo tanto, hemos usado este conocimiento para proponer la
nuestro repositorio GitHub2 bajo una licencia LGPL V3.
fórmula c = round(0,2 ∗ P − 1)/2 para calcular las secciones
El modelo de isla se ha ejecutado de forma ası́ncrona,
extra a solapar. Por lo tanto, cuando P = 8 entonces c = 0
utilizando el modelo de intercambio distribuido de interpo-
(equivalente a D), cuando P = 16 entonces c = 1 (equivalente
blación de ECJ, en un cluster de 16 nodos, cada uno con 16
a S), y ası́ sucesivamente. La figura 1 explica el método A,
asumiendo que c = 2, por ejemplo. 2 https://github.com/hpmoon/hpmoon-islands

683
XVIII Conferencia de la Asociación Española para la Inteligencia Artificial

Figura 1. ASO solapado automáticamente (A): cada isla p modifica los p + c, pth y p − c componentes (en gris) de los individuos usando operadores
genéticos (cruce y mutación). Además, cada isla evalúa a sus propios individuos usando el cromosoma completo. Después de un número dado de generaciones
coopera con las otras islas a través de la migración. Se calcula c dependiendo del número de islas. En este caso, c = 2.

Nombre del parámetro Valor


Tamaño global de la población (N ) 1024
de referencia, hemos elegido el valor (1,9) ya que ninguna de
Selección Torneo Binario las soluciones existentes en todos los frentes obtenidas durante
Tipo de reemplazo Generacional todas las ejecuciones están dominadas por él.
Tipo de crossover SBX
Tipo de mutación Polinomial Se ha realizado una prueba de significación de Kruskal-
Probabilidad de mutación 1/L Wallis a las métricas de todas las ejecuciones de las configu-
Individuos por migración 1 raciones, ya que la prueba de Kolmogorov-Smirnov detectó
Generaciones entre migración 5
Selección para migración Torneo Binario
distribuciones no normales. Los resultados medios de cada
Ejecuciones por configuración 30 configuración se muestran en la Tabla II. Como se explicó
Número de islas (P ) 8, 16, 32, 64 and 128 anteriormente, cuando P = 8 los resultados de A son equiva-
Tamaño del cromosoma (L) 2048 lentes a los obtenidos por D (porque c = 0), y cuando P = 16
Tiempo de ejecución (s) 100
son equivalentes a S (c = 1). Nos referimos a esta equivalencia
Tabla I
PAR ÁMETROS Y OPERADORES USADOS EN LOS EXPERIMENTOS . con la palabra Equiv- en las tablas.
Los resultados muestran que la división del cromosoma pro-
duce una mejora en todos los indicadores de calidad utilizando
la versión automática (A) (Tabla II), superando incluso los
procesadores Intel(R) Xeon(R) CPU E5520 @2.27GHz, 16 métodos solapado (S) y disjunto (D). Por lo tanto, existe
GB RAM, tarjetas de red Broadcom NetXtreme II BCM5716 algún tipo de punto lı́mite en la longitud de los cromosomas
1000Base-T (C0) PCI Express, CentOS 6.8 y Java Versión donde un método será preferible a otro, además de depender
1.8.0 80. del número de islas y del tamaño de la población.
El conjunto total de parámetros usados se muestra en la Esto puede explicarse comparando el número de soluciones
Tabla I. no dominadas de cada frente y el número medio de genera-
ciones (Tabla III). Aumentar el número de islas implica más
V. R ESULTADOS
generaciones con todos los métodos (lógicamente, ya que hay
Para calcular la calidad de los FPs obtenidos en cada menos individuos en cada isla). Pero también, los métodos
configuración se han utilizado diferentes métricas, explicadas ASO se acercan al número de generaciones con la baseline
anteriormente. Como el HV requiere que se calcule un punto al aumentar el número de islas. Sin embargo el tiempo de

684
XIII Congreso Español en Metaheurı́sticas y Algoritmos Evolutivos y Bioinspirados
HV Spread IGD
#Island B D S A B D S A B D S A
ZDT1
8 0.891 0.953 0.937 Equiv-D 0.681 0.635 B 0.661 D Equiv-D 0.015 0.002 0.005 Equiv-D
16 0.884 0.850 0.942 Equiv-S 0.705 0.908 0.670 B Equiv-S 0.016 0.022 0.004 Equiv-S
32 0.851 0.674 0.859 B 0.900 0.754 0.868 0.826 D 0.763 B 0.023 0.062 0.020 B 0.012
64 0.800 0.608 0.697 0.824 B 0.808 0.880 0.861 B 0.823 B 0.033 0.078 0.056 0.027
128 0.735 0.582 0.613 0.745 0.841 0.888 0.878 D 0.865 S 0.047 0.084 0.075 0.043
ZDT2
8 0.832 0.895 0.869 Equiv-D 0.849 0.886 B 0.853 D Equiv-D 0.023 0.006 0.013 Equiv-D
16 0.831 0.833 B 0.884 Equiv-S 0.810 1.001 0.802 B Equiv-S 0.023 0.022 B 0.009 Equiv-S
32 0.800 0.628 0.800 B 0.817 0.848 0.974 0.983 D 0.908 0.031 0.082 0.032 B 0.027
64 0.729 0.491 0.623 0.716 0.909 0.967 0.979 D 0.997 BD 0.052 0.121 0.084 0.055 B
128 0.630 0.441 0.500 0.614 B 0.957 0.989 0.978 D 0.994 BS 0.080 0.136 0.119 0.085 B
ZDT3
8 0.917 0.971 0.960 Equiv-D 0.843 0.854 B 0.868 D Equiv-D 0.009 0.001 0.004 Equiv-D
16 0.911 0.876 B 0.963 Equiv-S 0.864 0.899 B 0.837 B Equiv-S 0.010 0.014 0.003 Equiv-S
32 0.884 0.710 0.883 B 0.931 0.856 0.870 B 0.842 B 0.842 BDS 0.013 0.032 0.013 B 0.008
64 0.828 0.645 0.728 0.854 0.878 0.896 B 0.871 BD 0.873 BDS 0.019 0.040 0.030 0.016 B
128 0.770 0.620 0.651 0.773 B 0.887 0.901 B 0.890 BD 0.885 BDS 0.026 0.043 0.039 0.025 B
ZDT6
8 0.271 0.398 0.323 Equiv-D 0.982 0.982 B 0.994 Equiv-D 0.171 0.115 0.149 Equiv-D
16 0.275 0.295 B 0.354 Equiv-S 0.981 0.970 B 1.006 Equiv-S 0.170 0.161 B 0.136 Equiv-S
32 0.239 0.123 0.240 0.254 0.989 0.991 B 0.982 BD 0.999 BD 0.186 0.235 0.185 B 0.179
64 0.184 0.068 0.125 0.178 B 0.985 0.982 B 0.992 B 0.995 BS 0.209 0.259 0.235 0.212
128 0.128 0.051 0.071 0.124 B 0.991 0.992 B 0.988 BD 1.003 0.233 0.266 0.257 0.235 B
Tabla II
M ÉTRICAS DE CALIDAD MEDIA OBTENIDAS DESPU ÉS DE 30 EJECUCIONES POR CONFIGURACI ÓN , PARA LOS 4 M ÉTODOS COMPARADOS : baseline (B),
DISJUNTO (D), SOLAPADO (S) Y SOLAPADO AUTOM ÁTICO (A). L OS ACR ÓNIMOS QUE APARECEN JUNTO A LOS VALORES INDICAN QUE NO HAY
DIFERENCIAS SIGNIFICATIVAS CON RESPECTO A ESE M ÉTODO PARA ESE VALOR . L OS MEJORES VALORES EST ÁN MARCADOS EN NEGRITA . E QUIV-X
IMPLICA QUE EL VALOR ES EL MISMO QUE EL DE EJECUTAR X , YA QUE AMBAS CONFIGURACIONES SER ÍAN IGUALES .

Average solutions per front Generations


#Island B D S A B D S A
ZDT1
8 137.733 47.167 119.933 B Equiv-D 175.067 225.667 207.933 Equiv-D
16 92.633 38.233 47.533 D Equiv-S 204.867 238.533 232.900 Equiv-S
32 56.167 41.167 28.667 32.567 S 225.433 243.833 242.533 242.000 S
64 50.900 49.667 B 35.600 25.367 236.500 245.967 245.700 244.033 D
128 45.767 64.933 44.167 B 31.867 242.800 247.000 247.000 D 245.733
ZDT2
8 64.267 22.733 56.867 B Equiv-D 175.633 226.000 208.100 Equiv-D
16 52.300 10.733 20.067 D Equiv-S 205.033 238.867 233.100 Equiv-S
32 34.400 10.367 10.433 D 17.900 S 225.600 244.267 242.633 242.000 S
64 24.600 10.900 9.267 D 12.867 DS 236.700 246.000 245.767 244.033 D
128 18.667 17.833 B 10.367 12.933 S 243.367 247.000 247.000 d 245.833
ZDT3
8 163.767 83.367 119.467 Equiv-D 176.533 226.400 207.700 Equiv-D
16 108.467 49.433 47.700 D Equiv-S 205.333 238.467 232.933 Equiv-S
32 72.133 44.333 31.833 36.533 S 225.100 243.900 242.433 242.000 S
64 54.867 57.600 B 40.633 29.300 236.333 245.933 245.733 244.000 D
128 50.600 72.133 49.033 B 34.933 243.200 247.000 247.000 D 245.833
ZDT6
8 22.133 13.833 14.433 D Equiv-D 175.733 226.100 207.767 Equiv-D
16 20.767 15.867 13.300 D Equiv-S 205.033 238.433 232.933 Equiv-S
32 22.600 10.700 10.033 D 11.967 DS 225.833 243.667 242.500 242.000 S
64 19.033 11.267 10.533 D 10.567 DS 236.433 245.900 245.833 244.000 D
128 15.800 24.500 11.600 12.233 DS 243.800 247.000 247.000 D 245.533
Tabla III
P ROMEDIO DE GENERACIONES Y PROMEDIO DE SOLUCIONES POR FRENTE , OBTENIDOS DESPU ÉS DE 30 EJECUCIONES POR CONFIGURACI ÓN , PARA LOS 4
M ÉTODOS COMPARADOS : baseline (B), DISJUNTO (D), SOLAPADO (S) Y SOLAPADO AUTOM ÁTICO (A). L OS ACR ÓNIMOS QUE APARECEN JUNTO A LOS
VALORES INDICAN QUE NO HAY DIFERENCIAS SIGNIFICATIVAS CON RESPECTO A ESE M ÉTODO PARA ESE VALOR . E QUIV-X IMPLICA QUE EL VALOR ES
EL MISMO QUE EL DE EJECUTAR X , YA QUE AMBAS CONFIGURACIONES SER ÍAN IGUALES .

migración es lo suficientemente grande como para no mejorar en la mayorı́a de las configuraciones comparadas.
el número de generaciones con respecto a la baseline, incluso
en el menor número de islas. Por lo tanto, más generaciones no VI. C ONCLUSIONES
significan necesariamente mejorar la solución del FP global, Los problemas que requieren un alto rendimiento y que
sino centrarse en diferentes elementos del cromosoma. Como tratan con un gran número de variables de decisión pueden
se ha dicho anteriormente, cada isla desconoce los FPs de aprovecharse de la división del espacio de decisión que
las otras islas, y están tratando de optimizar sus soluciones proporcionan los algoritmos paralelos y distribuidos. Esto se
independientemente. Con respecto al número promedio de puede hacer en dMOEAs mediante la aplicación selectiva
soluciones por frente, hay una clara diferencia con la baseline, de operadores (ASO), es decir, dividiendo el cromosoma en
donde este valor es en la mayorı́a de los casos, menos de diferentes partes, cada una modificada por una isla diferente.
la mitad. El número de soluciones no dominadas también Este trabajo compara un NSGA-II distribuido, como baseline,
implica un mejor indicador de Spread, donde la baseline con tres estrategias diferentes para separar el cromosoma
obtiene mejores (o no significativamente diferentes) valores (partes disjuntas o solapadas), utilizando distintos números de
islas. Los resultados muestran que estos métodos pueden lograr

685
XVIII Conferencia de la Asociación Española para la Inteligencia Artificial

métricas de mejor calidad que el baseline en la misma cantidad [12] E. Talbi, S. Mostaghim, T. Okabe, H. Ishibuchi, G. Rudolph, and
de tiempo. C. A. C. Coello, “Parallel approaches for multiobjective optimization,”
in Multiobjective Optimization, Interactive and Evolutionary Approaches
Los resultados obtenidos también muestran que al aumentar [outcome of Dagstuhl seminars]., ser. Lecture Notes in Computer
el número de islas, el método de solapamiento automático Science, J. Branke, K. Deb, K. Miettinen, and R. Slowinski, Eds., vol.
(A) mejora significativamente los resultados con respecto a 5252. Springer, 2008, pp. 349–372.
[13] A. J. Nebro and J. J. Durillo, “A study of the parallelization of the
los métodos disjunto y solapado. El estudio de este factor multi-objective metaheuristic MOEA/D,” in Learning and Intelligent
con más tipos de problemas y nuevas configuraciones del Optimization, 4th International Conference, LION 4, Venice, Italy,
tamaño de la población y la longitud de los cromosomas January 18-22, 2010. Selected Papers, ser. Lecture Notes in Computer
Science, C. Blum and R. Battiti, Eds., vol. 6073. Springer, 2010, pp.
puede abordarse en el futuro. Por ejemplo, comparar diferentes 303–317.
maneras de calcular c usando funciones lineales, logarı́tmicas [14] K. Deb, P. Zope, and A. Jain, “Distributed computing of Pareto-
o exponenciales dependiendo del tamaño de la población, optimal solutions with evolutionary algorithms,” in Evolutionary Multi-
Criterion Optimization, Second International Conference, EMO 2003,
número de islas, tamaño del cromosoma, u otros valores. Faro, Portugal, April 8-11, 2003, Proceedings, ser. Lecture Notes in
Además, se podrı́a realizar un análisis de la diversidad de los Computer Science, C. M. Fonseca, P. J. Fleming, E. Zitzler, K. Deb,
individuos de cada isla durante la ejecución del algoritmo para and L. Thiele, Eds., vol. 2632. Springer, 2003, pp. 534–549.
[15] W. Zhi-xin and G. Ju, “A parallel genetic algorithm in multi-objective
comprender su influencia en los resultados. optimization,” in Control and Decision Conference, 2009. CCDC ’09.
Asimismo, podrı́an utilizarse implementaciones más dis- Chinese, June 2009, pp. 3497–3501.
[16] N. Xiao and M. P. Armstrong, “A specialized island model and its
tribuidas en varios sistemas (como GPUs o clusters hete- application in multiobjective optimization,” in Genetic and Evolutionary
rogéneos) con diferentes cantidades de islas/procesadores para Computation - GECCO 2003, Genetic and Evolutionary Computation
realizar un estudio de escalabilidad de los diferentes métodos, Conference, Chicago, IL, USA, July 12-16, 2003. Proceedings, Part II,
ser. Lecture Notes in Computer Science, E. Cantú-Paz, J. A. Foster,
siendo el tiempo de transmisión entre islas un tema relevante a K. Deb, L. Davis, R. Roy, U. O’Reilly, H. Beyer, R. K. Standish,
tratar. También pueden compararse otros MOEAs disponibles G. Kendall, S. W. Wilson, M. Harman, J. Wegener, D. Dasgupta, M. A.
en la literatura, como SPEA o MOEA/D. Además, podrı́an Potter, A. C. Schultz, K. A. Dowsland, N. Jonoska, and J. F. Miller,
Eds., vol. 2724. Springer, 2003, pp. 1530–1540.
utilizarse otros benchmarks y problemas reales para validar [17] M. Märtens and D. Izzo, “The asynchronous island model and NSGA-
este enfoque. II: study of a new migration operator and its performance,” in Genetic
and Evolutionary Computation Conference, GECCO ’13, Amsterdam,
The Netherlands, July 6-10, 2013, C. Blum and E. Alba, Eds. ACM,
R EFERENCIAS 2013, pp. 1173–1180.
[18] B. Dorronsoro, G. Danoy, A. J. Nebro, and P. Bouvry, “Achieving super-
[1] A. M. Mora, P. Garcı́a-Sánchez, J. J. Merelo-Guervós, and P. A. Casti- linear performance in parallel multi-objective evolutionary algorithms by
llo, “Pareto-based multi-colony multi-objective ant colony optimization means of cooperative coevolution,” Computers & OR, vol. 40, no. 6, pp.
algorithms: an island model proposal,” Soft Comput., vol. 17, no. 7, pp. 1552–1563, 2013.
1175–1207, 2013. [19] A. Atashpendar, B. Dorronsoro, G. Danoy, and P. Bouvry, “A scalable
[2] F. Luna and E. Alba, “Parallel multiobjective evolutionary algorithms,” parallel cooperative coevolutionary PSO algorithm for multi-objective
in Springer Handbook of Computational Intelligence, J. Kacprzyk and optimization,” J. Parallel Distrib. Comput., vol. 112, pp. 111–125, 2018.
W. Pedrycz, Eds. Springer, 2015, pp. 1017–1031. [20] E. Zitzler, K. Deb, and L. Thiele, “Comparison of Multiobjective
[3] A. Mukhopadhyay, U. Maulik, S. Bandyopadhyay, and C. A. C. Coello, Evolutionary Algorithms: Empirical Results,” Evol. Comput., vol. 8,
“A survey of multiobjective evolutionary algorithms for data mining: no. 2, pp. 173–195, 2000.
Part I,” IEEE T. Evolut. Comput., vol. 18, no. 1, pp. 4–19, 2014. [21] E. Alba and G. Luque, “Evaluation of parallel metaheuristics,” in
[4] A. E. Eiben and J. E. Smith, Introduction to Evolutionary Computing, Empirical Methods for the Analysis of Algorithms, Workshop EMAA
ser. Natural Computing Series. Springer, 2015. 2006, Proceedings, L. Paquete, M. Chiarandini, and D. Basso, Eds.,
[5] E.-G. Talbi, “A unified view of parallel multi-objective evolutionary Reykjavik, Iceland, 2006, pp. 9–14.
algorithms,” J. Parallel Distrib. Comput., pp.–, 2018, in press. [22] S. Luke et al., “ECJ: A Java-based Evolutionary Computation and
[Online]. Available: https://www.sciencedirect.com/science/article/pii/ Genetic Programming Research System,” 2009, available at http://www.
S074373151830279X cs.umd.edu/projects/plus/ec/ecj.
[6] E. Alba, G. Luque, and S. Nesmachnow, “Parallel metaheuristics: recent
advances and new trends,” Int. T. Oper. Res., vol. 20, no. 1, pp. 1–48,
2013.
[7] Y. Gong, W. Chen, Z. Zhan, J. Zhang, Y. Li, Q. Zhang, and J. Li,
“Distributed evolutionary algorithms and their models: A survey of the
state-of-the-art,” Appl. Soft Comput., vol. 34, pp. 286–300, 2015.
[8] E. Alba and M. Tomassini, “Parallelism and evolutionary algorithms,”
IEEE Trans. Evolutionary Computation, vol. 6, no. 5, pp. 443–462, 2002.
[9] J. Branke, H. Schmeck, K. Deb, and R. S. Maheshwar, “Parallelizing
multi-objective evolutionary algorithms: cone separation,” in Procee-
dings of the IEEE Congress on Evolutionary Computation, CEC 2004,
19-23 June 2004, Portland, OR, USA. IEEE, 2004, pp. 1952–1957.
[10] D. Kimovski, J. Ortega, A. Ortiz, and R. Baños, “Parallel alternatives
for evolutionary multi-objective optimization in unsupervised feature
selection,” Expert Syst. Appl., vol. 42, no. 9, pp. 4239–4252, 2015.
[11] P. Garcı́a-Sánchez, J. Ortega, J. González, P. A. Castillo, and J. J. Merelo,
“Addressing high dimensional multi-objective optimization problems by
coevolutionary islands with overlapping search spaces,” in Applications
of Evolutionary Computation - 19th European Conference, EvoApplica-
tions 2016, Porto, Portugal, March 30 - April 1, 2016, Proceedings, Part
II, ser. Lecture Notes in Computer Science, G. Squillero and P. Burelli,
Eds., vol. 9598. Springer, 2016, pp. 107–117.

686
XIII Congreso Español en Metaheurı́sticas y Algoritmos Evolutivos y Bioinspirados

Análisis de Diseños Paralelos Multiobjetivo y


Polı́ticas de Planificación en Biologı́a Evolutiva
Sergio Santander-Jiménez Miguel A. Vega-Rodrı́guez Leonel Sousa
INESC-ID, IST, Universidade de Lisboa, INTIA, Universidad de Extremadura, INESC-ID, IST, Universidade de Lisboa,
Lisboa 1000-029, Portugal Cáceres 10003, España Lisboa 1000-029, Portugal
sergio.jimenez@tecnico.ulisboa.pt mavega@unex.es leonel.sousa@ist.utl.pt

Resumen—Las metaheurı́sticas paralelas representan una de verse afectados por dos fuentes principales de desequilibrio
las técnicas de mayor popularidad para abordar la resolución de de carga. Al nivel del diseño metaheurı́stico, los operadores
problemas de optimización complejos. Sin embargo, una de las de búsqueda pueden mostrar distintos requisitos temporales,
cuestiones principales que surgen al emplear estos métodos viene
dada por la aparición potencial de problemas de desequilibrio de hecho que puede volverse más remarcable en situaciones de
carga. De hecho, la complejidad de los problemas de optimización cambio de contexto de explotación a exploración (o viceversa).
actuales obliga a la adopción de múltiples estrategias de búsqueda Al nivel de implementación del problema, las soluciones gene-
condicionales dentro de la metaheurı́stica, lo cual incide en el radas pueden mostrar caracterı́sticas divergentes que influyen,
impacto que implica el desequilibrio de carga en el rendimiento por ejemplo, en los cálculos efectuados en las funciones
paralelo. Este trabajo analiza diferentes polı́ticas de planificación
y diseños algorı́tmicos para abordar el desequilibrio de carga en objetivo, dando lugar a tiempos de evaluación no homogéneos.
la metaheurı́stica Multiobjective Shuffled Frog-Leaping Algorithm. Estas cuestiones implican un aumento de la sobrecarga y, con-
Tomando como caso de estudio un problema de biologı́a evolutiva, secuentemente, un empeoramiento del rendimiento paralelo.
la reconstrucción filogenética, abordamos la evaluación de tres Ası́, las metaheurı́sticas paralelas deben considerar este
polı́ticas de planificación en el algoritmo original, ası́ como tipo de factores para conseguir una explotación precisa de
una alternativa de diseño basada en el uso de contadores. Los
resultados obtenidos en cuatro bases de datos reales dan cuenta los recursos hardware. Este trabajo se focaliza en el análisis
de la influencia de las aproximaciones estudiadas en los tiempos de distintas polı́ticas de planificación y diseños para abordar
de sobrecarga, destacando los beneficios de integrar polı́ticas problemas de desequilibrio de carga. Adoptamos como caso
dinámicas y diseños que respeten las mecánicas del algoritmo. de estudio un problema de biologı́a evolutiva: la inferencia de
Index Terms—Biologı́a evolutiva, desequilibrio de carga, relaciones ancestrales entre especies [2]. En escenario mono-
computación paralela, metaheurı́sticas multiobjetivo
objetivo, existen propuestas como IQ-TREE [3] y GARLI [4]
que han dado cuenta de los beneficios de emplear computación
I. I NTRODUCCI ÓN
de altas prestaciones y métodos bioinspirados de búsqueda
La resolución eficiente de problemas de optimización se en este problema. Las aproximaciones multiobjetivo también
ha convertido en una de las lı́neas de investigación predo- representan una tendencia significativa en el caso de datos
minantes en multitud de dominios cientı́ficos. En contextos de ADN [5], al contribuir potencialmente a la resolución de
reales, es obligatorio el diseño de aproximaciones algorı́tmicas problemas de incongruencia en contextos reales.
innovadoras para cumplir los requisitos de calidad de solución Abordaremos este problema biológico desde la perspectiva
y, al mismo tiempo, lidiar con la naturaleza NP-completa de multiobjetivo, usando una metaheurı́stica basada en población
estos problemas. Sin embargo, la dificultad de estos proce- denominada Multiobjective Shuffled Frog-Leaping Algorithm
sos de optimización continúa creciendo con la adopción de (MO-SFLA) [6]. Bajo implementaciones MPI+OpenMP, exa-
formulaciones más realistas, escenarios Big Data, múltiples minaremos el impacto de distintas polı́ticas de planificación
funciones objetivo, etc. Ası́, es habitual la presencia de tiempos (estática, guiada y dinámica) en el rendimiento paralelo del
de ejecución elevados que resultan inasumibles incluso al em- diseño algorı́tmico original, ası́ como diseños alternativos de
plear técnicas estocásticas de resolución. Las metaheurı́sticas la aproximación. El análisis planteado será efectuado sobre
paralelas han demostrado aplicabilidad potencial para lidiar cuatro instancias reales del problema basadas en secuencias
con estas cuestiones, obteniendo resultados significativos [1]. de proteı́nas, las cuales presentan un nivel superior de com-
A pesar de la naturaleza intrı́nsecamente paralela de las plejidad con respecto a otros tipos de datos biológicos [7]. La
metaheurı́sticas basadas en población, estos métodos pueden bondad de los resultados obtenidos será estudiada mediante
comparativas con otros métodos del estado del arte.
Este trabajo ha sido parcialmente financiado por la AEI (Agencia Estatal de
Investigación, España) y el FEDER (Fondo Europeo de Desarrollo Regional, Este artı́culo se organiza del siguiente modo. La Sección
UE), bajo el proyecto TIN2016-76259-P (proyecto PROTEIN), ası́ como por II detalla la formulación del problema estudiado. La Sección
la FCT (Fundação para a Ciência e a Tecnologia, Portugal) bajo los proyec- III describe diseños y polı́ticas de planificación para MO-
tos UID/CEC/50021/2013 y LISBOA-01-0145-FEDER-031901 (PTDC/CCI-
COM/31901/2017, HiPErBio). Sergio Santander-Jiménez agradece a la FCT el SFLA, examinándose resultados en la Sección IV. Finalmente,
soporte recibido a través del contrato postdoctoral SFRH/BPD/119220/2016. la Sección V destaca conclusiones y lı́neas futuras de trabajo.

687
XVIII Conferencia de la Asociación Española para la Inteligencia Artificial

II. F ORMULACI ÓN DEL P ROBLEMA cada posible valor de estado de carácter a cualquier otro. Bajo
esta función, se da prioridad a la solución T = (V, E) que
La inferencia de relaciones ancestrales entre organismos
maximice el valor de verosimilitud L(T ) [2]:
representa uno de los problemas más importantes en biologı́a
evolutiva [2]. Dicho problema involucra el estudio de un
alineamiento múltiple de secuencias de tamaño N ×M (donde
M X
Y
L(T ) = πx [Pxy (tru )Lp (ui = y)]
N es el número de secuencias y M la longitud de secuencia), (2)
i=1 x,y∈Λ
el cual es procesado para identificar patrones de divergencia y
similitud. Esta información es utilizada para inferir organismos ×[Pxy (trv ) Lp (vi = y)],
ancestrales hipotéticos y definir el curso de la evolución a donde Λ es el alfabeto de estados de carácter (aminoácidos
través de una estructura arborescente, conocida como árbol en el caso de secuencias de proteı́nas), πx la probabilidad
filogenético T = (V, E). En particular, los nodos internos estacionaria de observar el valor de estado x, r ∈ V la raı́z de
del conjunto de nodos V describen los ancestros potenciales T con hijos u, v ∈ V , Pxy (t) la probabilidad de mutación de
cuya evolución dio lugar a los organismos caracterizados en x a otro estado y en un tiempo t (siendo tru y trv la longitud
el alineamiento de entrada, organismos que se localizan en los de las ramas (r, u), (r, v) ∈ E), y Lp (ui = y), Lp (vi = y) las
nodos hoja. La definición de relaciones evolutivas se efectúa a verosimilitudes parciales de observar y en ui y vi .
través del conjunto de ramas E, donde se definen los enlaces III. D ESCRIPCI ÓN DE M ÉTODOS
ancestro-descendiente entre nodos emparentados.
MO-SFLA es una metaheurı́stica que integra mecanismos
La aplicación de procedimientos de optimización en este
multiobjetivo en el método frog leaping optimization [8].
problema tienen por objeto identificar el árbol filogenético
En cada iteración, los popSize individuos que conforman
que maximice o minimice un determinado criterio de op-
la población son ordenados (según sus valores de fitness)
timalidad biológico, lo cual implica la exploración de un
y distribuidos uniformemente en m particiones denominadas
espacio de filogenias S. La principal cuestión que surge en
memeplexes. Cada memeplex contiene n=popSize/m indivi-
este contexto viene dada por el crecimiento exponencial de
duos, cuya evolución se produce separadamente durante nl
S con el número de secuencias N , definiéndose el número
pasos de aprendizaje. Una vez todos los memeplexes han sido
de posibles soluciones candidatas en S de acuerdo al doble
procesados, son combinados para permitir una compartición
factorial (2N − 5)!! [2]. Otros factores, tales como la longitud
de información entre todos los memeplexes, actualizando la
de secuencia M , el tipo de datos contenido en el alineamiento
población para la siguiente generación.
(por ejemplo, aminoácidos) y la consideración conjunta de
Para la adaptación al problema abordado, MO-SFLA in-
múltiples criterios de optimalidad, contribuyen al elevado coste
cluye una representación del individuo basada en matrices
computacional del problema. Todo ello impide la aplicación
de distancia filogenéticas. Una solución candidata vendrá
de aproximaciones serie tradicionales.
codificada por una matriz simétrica δ que contiene en cada
En este artı́culo, afrontamos estas cuestiones mediante apro-
entrada δ[x, y] la distancia evolutiva entre los organismos x
ximaciones metaheurı́sticas paralelas. La formulación adopta-
e y. El mapeo de soluciones desde este espacio de decisión
da del problema involucra la optimización de dos funciones
matricial al espacio de filogenias se lleva a cabo mediante el
objetivo: parsimonia y verosimilitud. Por un lado, la par-
método de reconstrucción de árboles filogenéticos BIONJ [2].
simonia cuantifica el número de cambios observados entre
La etapa de inicialización de la población considerará matrices
las secuencias de nodos emparentados. El objetivo radica en
de distancia calculadas a partir de topologı́as filogenéticas
inferir la hipótesis evolutiva más simple, dando prioridad a
iniciales generadas mediante técnicas de bootstraping [2].
la solución T = (V, E) que minimice el número de cambios
El Pseudocódigo 1 detalla el diseño original de MO-SFLA,
medidos a través del valor de parsimonia P (T ) [2]:
el cual realiza el proceso de optimización hasta que un
determinado criterio de parada (en nuestro caso, un máximo de
X
M X
P (T ) = C(ui , vi ), (1) evaluaciones) es satisfecho. Al comienzo de cada generación,
i=1 (u,v)∈E los individuos de la población son ordenados según su calidad
multiobjetivo (lı́nea 7 en el Pseudocódigo 1), manteniendo
donde (u, v) ∈ E representa la rama de la topologı́a que las popSize soluciones más prometedoras conforme a sus
conecta dos nodos u, v ∈ V , ui y vi son los valores de estado valores de ranking Pareto (fast non-dominated sort) y densidad
del i-ésimo carácter de las secuencias correspondientes a u y (distancia de crowding) [9]. Tras la ordenación, se definen los
v, y C(ui , vi ) indica las mutaciones observadas entre u y v memeplexes mediante la distribución de individuos de manera
(C(ui , vi )=1 si ui 6= vi y C(ui , vi )=0 en caso contrario). iterativa, asignando el individuo i-ésimo al memeplex i %m.
Por su parte, la función de verosimilitud establece una La generación de nuevas soluciones candidatas dentro de
medida probabilı́stica de la plausibilidad de que el árbol cada memeplex se realiza mediante la definición de distintos
filogenético evaluado haya dado lugar efectivo a la diversidad operadores de búsqueda (lı́neas 17-26), que son aplicados
observada en el alineamiento de entrada. Los cálculos de según el estado actual del proceso de optimización. Dado

verosimilitud se realizan conforme a modelos de evolución un memeplex M emi , generamos una nueva solución Pnew
que definen las probabilidades de observar mutaciones desde conforme a la siguiente formulación:

688
XIII Congreso Español en Metaheurı́sticas y Algoritmos Evolutivos y Bioinspirados
Pseudocódigo 1 MO-SFLA Paralelo multicore: 1) el procesamiento de memeplexes puede efec-
1: MPI_Init /* inicializando proceso MPI #i */ tuarse de manera independiente de una memeplex a otro; y
2: #pragma omp parallel num_threads (num_hilos)
3: mientras ! criterio de parada (maxEval) hacer 2) la generación de soluciones candidatas dentro del mismo
4: /* Definición y asignación de memeplexes */ memeplex no presenta dependencias de un paso de aprendizaje
5: #pragma omp single
6: si proceso maestro entonces (iteración del bucle) a otro. Estos dos niveles son apropiados
7: {Mem1 ... Memm } ← Ordenación y Distribución (P , popSize) para su explotación mediante MPI+OpenMP [10], [11].
8: BestGlobal ← Identificar Mejor Global ({Mem1 ... Memm })
9: /* ∀i : i = 2 a m */ En cada generación, un proceso maestro se encargará ini-
10: MPI_Send (Memi , n, i), MPI_Send (BestGlobal, 1, i) cialmente de la gestión de la población y la definición de
11: si no
12: MPI_Recv (Memi , n, master id), MPI_Recv (BestGlobal, 1, master id) memeplexes, distribuyendo adecuadamente los individuos. Los
13: fin si memeplexes resultantes serán asignados a distintos proce-
14: BestLocal ← Identificar Mejor Local (Memi )
15: /* Tareas paralelas: evolución del memeplex asignado */ sos trabajadores mediante las funciones MPI MPI_Send y
16: #pragma omp for MPI_Recv (lı́nea 10 en el Pseudocódigo 1 para el lado
17: para j = 1 to nl hacer
18: ′
Pnew ← Aprendizaje Mejor Local (BestLocal, Memi(n−j) ) emisor - maestro, y lı́nea 12 para el lado receptor - traba-

19: si ! Pnew

≻ Memi(n−j) entonces jador). Concluida la comunicación, cada proceso (incluyendo
20: Pnew ← Aprendizaje Mejor Global (BestGlobal, Memi(n−j) )
21: ′
si ! Pnew ≻ Memi(n−j) entonces el maestro) realizará el procesamiento de los memeplexes
22: ′
Pnew ← Búsqueda Local (Memi(n−j) ) asignados (lı́neas 15-26), usando la directiva #pragma omp
23: fin si
24: fin si
for para distribuir las iteraciones del bucle entre los hilos
25: Memi(n−j) ← Pnew ′
de ejecución. Terminado el procesamiento de memeplexes,
26: fin para
27: /* Entrega de resultados */
los resultados obtenidos son comunicados mediante funciones
28: #pragma omp single MPI al proceso maestro (lı́neas 31 -maestro, y 35 - trabajador),
29: si proceso maestro entonces
30: /* ∀i : i = 2 a m */
efectuándose entonces las tareas finales de la generación.
31: MPI_Recv (Memi , n, i) En este diseño, los procesos se ven afectados por distintas
32: P ← Mezclar Memeplexes (P , {Mem1 ... Memm })
fuentes de desequilibrio de carga. En primer lugar, la me-
33: ParetoFront ← Actualizar Frente de Pareto (P )
34: si no taheurı́stica plantea hasta tres estrategias de búsqueda dife-
35: MPI_Send (Memi , n, master id)
rentes que pueden ser ejecutadas en una misma iteración del
36: fin si
37: fin mientras bucle paralelo definido en la lı́nea 17. Ası́, cada iteración puede
38: MPI_Finalize /* finalizando proceso MPI #i */
implicar un número variable de operaciones en conformidad
con el éxito de las estrategias aplicadas. Además, la generación
de una nueva solución candidata involucra dos mecanismos es-
pecı́ficos del problema: la reconstrucción del árbol y el cómpu-
to de las funciones objetivo. Estas operaciones se caracterizan
Dxy = rand() · (Ref.δ[x, y] − M emij .δ[x, y]), (3)
no solo por el hecho de incluir cálculos computacionalmente

Pnew .δ[x, y] = M emij .δ[x, y] + Dxy , (4) costosos, sino también por presentar divergencias en tiempo
de ejecución según las caracterı́sticas de la solución candidata.
donde rand() es un número aleatorio de una distribución Para afrontar dichos problemas de desequilibrio de carga,
uniforme en el rango [0, 1] y M emij el individuo en M emi consideraremos primero el uso de las polı́ticas de planificación
procesado en el paso de aprendizaje j. Ref representa una de bucles paralelos definidas en el estándar OpenMP. Concre-
solución que es tomada como referencia durante este proceso. tamente, examinamos tres aproximaciones diferentes:
Inicialmente, se toma como Ref el mejor individuo local de 1. Estática. Las iteraciones son divididas en bloques que

M emi (lı́nea 18). En caso de que la solución resultante Pnew se asignan de manera estática a cada hilo en modo
no mejore a M emij , se repite el proceso anterior tomando round-robin según el identificador de hilo. Dado que
como Ref el mejor individuo global de toda la población (lı́nea esto no permite la resolución de desequilibrios de carga
20). Si sigue sin observarse mejora, se aplica una búsqueda potenciales (al tener cada hilo sus iteraciones asignadas a
local basada en los operadores topológicos nearest neighbour priori), usaremos esta polı́tica como punto de referencia.
interchange y subtree pruning and regrafting [2] (lı́nea 22). 2. Dinámica. En esta aproximación, los hilos solicitan
Al final de la generación (lı́neas 32, 33), los memeplexes gradualmente nuevas iteraciones al terminar las que han
son reunificados para actualizar la estructura de la población, ido manejado previamente. Ası́, los hilos más rápidos
la cual es usada a su vez para identificar soluciones no pueden comenzar el procesamiento de nuevos bloques
dominadas y ası́ almacenarlas en la estructura ParetoFront. Al inmediatamente tras acabar su carga de trabajo inicial.
satisfacerse el criterio de parada, dicha estructura contendrá 3. Guiada. De manera similar a la aproximación dinámica,
las soluciones no dominadas encontradas a lo largo de la la planificación guiada permite la asignación gradual de
ejecución, representando la salida del algoritmo. iteraciones a los hilos. Se asignan nuevas iteraciones
mediante bloques de tamaño proporcional al número de
III-A. Diseños Paralelos y Polı́ticas de Planificación iteraciones aún no asignadas dividido entre el número de
MO-SFLA presenta dos caracterı́sticas clave que hacen a hilos, reduciendo estos bloques de manera exponencial
esta metaheurı́stica adecuada para su ejecución en clusters hasta un mı́nimo de 1 (configuración estándar).

689
XVIII Conferencia de la Asociación Española para la Inteligencia Artificial
Pseudocódigo 2 MO-SFLA Paralelo Basado en Contadores Tabla I
1: MPI_Init /* inicializando proceso MPI #i */ C ONJUNTOS DE DATOS DE P ROTE ÍNAS U SADOS EN LA
2: #pragma omp parallel num_threads (num_hilos) E XPERIMENTACI ÓN
3: mientras ! criterio de parada (maxEval) hacer
4: #pragma omp single
Instancia N M Organismo Modelo Evolutivo [2]
5: BestGlobal, {Mem1 ... Memm } ← Gestionar Población (P , popSize)
6: Asignación Memeplex-Proceso (BestGlobal, Memi , i) /*∀i : i = 2 a m*/ M88x3329 88 3329 Hongos termófilos [12] LG+Γ
7: Bestlocal ← Identificar Mejor Local (Memi ) M187x814 187 814 Hongos micorrı́cicos [13] LG+Γ
8: #pragma omp for M260x1781 260 1781 Beta vulgaris [14] JTT+Γ
9: para j = 1 to nl hacer M355x1263 355 1263 Hemiascomicetos [15] LG+Γ
10: switch (Memi(n−j) .counter)

11: caso 0: Pnew ← Aprendizaje Mejor Local (Bestlocal , Memi(n−j) )

12: caso 1: Pnew ← Aprendizaje Mejor Global (Bestglobal , Memi(n−j) )
′ Tabla II
13: caso 2: Pnew ← Búsqueda Local (Memi(n−j) )
14: ′
si Pnew ≻ Memi(n−j) || Memi(n−j) .counter == 2 entonces C OMPARATIVA PARALELA (S PEEDUPS SU Y E FICIENCIA EF)

15: Memi(n−j) ← Pnew , Memi(n−j) .counter ← 0
16: si no M88x3329 (Tserie = 57111,63 segundos)
17: Memi(n−j) .counter ← Memi(n−j) .counter + 1
Estática Dinámica Guiada Contadores
18: fin si
19: fin para Cores SU EF( %) SU EF( %) SU EF( %) SU EF( %)
20: #pragma omp single
8 6,93 86,59 7,21 90,10 7,09 88,65 7,81 97,67
21: Comunicación de Resultados (Memi , master id) /*∀i : i = 2 a m*/ 16 11,58 72,38 13,53 84,57 13,31 83,18 14,94 93,38
22: P , ParetoFront ← Tareas Finales de la Generación (P , {Mem1 ... Memm }) 32 19,10 59,69 22,83 71,36 22,34 69,82 28,18 88,06
23: fin mientras 48 26,18 54,54 28,88 60,17 27,84 57,99 39,86 83,04
24: MPI_Finalize /* finalizando proceso MPI #i */
M187x814 (Tserie = 44171,92 segundos)
8 6,16 77,06 6,54 81,78 6,46 80,74 7,70 96,27
16 10,70 66,88 12,18 76,12 11,96 74,78 14,75 92,19
Una alternativa a esta aproximación radica en la adaptación 32 18,58 58,06 21,85 68,28 20,99 65,60 27,71 86,59
48 23,96 49,92 28,33 59,03 26,04 54,25 39,66 82,63
del diseño para que cada iteración del bucle de procesamiento M260x1781 (Tserie = 66748,33 segundos)
de memeplexes ejecute solo una de las estrategias de búsqueda 8 7,37 92,16 7,69 96,18 7,55 94,33 7,86 98,28
definidas. Esta idea viene plasmada en el Pseudocódigo 2, la 16 12,75 79,69 14,18 88,61 13,70 85,61 15,65 97,81
32 20,45 63,91 23,29 72,78 22,51 70,36 29,20 91,25
cual se basa en el empleo de contadores para medir el número 48 26,36 54,92 30,21 62,94 27,90 58,11 40,56 84,49
de intentos en que un individuo de la población no ha sido M355x1263 (Tserie = 96219,62 segundos)
mejorado. En función del valor de este contador, se decide 8 6,79 84,90 7,47 93,40 7,22 90,21 7,92 98,95
la estrategia de búsqueda a ser aplicada sobre dicho individuo 16 11,92 74,50 13,76 86,03 13,69 85,56 15,68 98,00
32 21,96 68,63 25,59 79,97 23,77 74,28 29,87 93,34
(lı́neas 10-13 del Pseudocódigo 2). Dado un individuo M emij , 48 29,30 61,04 32,97 68,69 30,80 64,17 42,63 88,82
un valor de 0 en su contador implicará la generación de la
nueva solución empleando el mejor individuo local de M emi ,
mientras que un valor de 1 conllevará el empleo del mejor de MO-SFLA fueron establecidos a los siguientes valores:
individuo global y un valor de 2 la búsqueda local. En caso popSize = 128, m = 4, n = 32, nl = 32, maxEval = 10000.
de observarse mejora, el contador asociado será reinicializado
IV-A. Evaluación del Rendimiento Paralelo
y la solución almacenada en M emij (lı́nea 15). En caso
contrario, la solución generada es descartada y el contador Con objeto de examinar el rendimiento paralelo, empleare-
de M emij incrementado (lı́nea 17). De esta manera, en la mos las métricas paralelas de aceleración o speedup y eficien-
siguiente generación el proceso trabajador efectuará un nuevo cia [11]. Consideraremos los resultados temporales medianos
intento sobre M emij considerando una estrategia de búsqueda (procedentes de 11 ejecuciones independientes por experimen-
diferente. Como en la versión original, se pueden emplear las to) obtenidos sobre distintos tamaños del sistema (8, 16, 32
polı́ticas de planificación de OpenMP para complementar el y 48 cores). La Tabla II presenta los resultados observados,
mecanismo de balanceo basado en contadores. ası́ como los tiempos de la versión serie de MO-SFLA Tserie
usados como referencia en el cálculo de las métricas paralelas.
IV. R ESULTADOS E XPERIMENTALES Centrándonos en primer lugar en los resultados del diseño
En esta sección abordamos la evaluación experimental de original (columnas 2, 3 - versión estática, 4, 5 - dinámica, y
los diseños paralelos y polı́ticas de planificación considerados 6, 7 - guiada), es posible observar el efecto del desequilibrio
para MO-SFLA. Para ello, examinaremos el rendimiento pa- de carga en el rendimiento de la versión inicial estática. De
ralelo obtenido en cuatro bases de datos reales de proteı́nas, hecho, la polı́tica estática no resulta adecuada para superar el
las cuales son descritas en la Tabla I. La experimentación fue umbral de 50 % de eficiencia en el caso de instancias como
efectuada sobre 4 nodos de cómputo de una infraestructura M187x814 con 48 cores, lo cual sugiere una baja utilización
clúster con interconexión Gigabit Ethernet. Estos nodos están de los recursos hardware disponibles. Por su parte, el empleo
compuestos por procesadores AMD Opteron 6174 de 12 cores de polı́ticas de planificación dinámica da lugar a una reducción
a 2,2GHZ (un total de 48 cores disponibles) con 12MB de considerable en la sobrecarga de la versión estática, reduciendo
memoria caché L3 y 16GB de RAM DDR3, Ubuntu 14.04LTS los tiempos de espera a nivel de hilos hasta un 33,6 % (para
como sistema operativo y el compilador GCC 5.2.1. la instancia M355x1263) y los de sincronización inter-proceso
De acuerdo a las caracterı́sticas del clúster empleado y los hasta un 45,4 % (M187x814). Esto implica que, para el diseño
estudios paramétricos efectuados, los parámetros de entrada original de MO-SFLA, la planificación dinámica consigue el

690
XIII Congreso Español en Metaheurı́sticas y Algoritmos Evolutivos y Bioinspirados

eficiencias medias de 88,5 % (8 cores), 82,3 % (16 cores),


70,0 % (32 cores) y 58,6 % (48 cores). Con respecto a la
versión estática, la planificación guiada reduce hasta un 13,7 %
(M355x1263) los tiempos de espera entre hilos, ası́ como hasta
un 33,3 % (M187x814) la sincronización entre procesos. Sin
embargo, estos resultados no igualan la calidad de la polı́tica
dinámica, la cual representa la aproximación más adecuada en
el contexto del diseño original de MO-SFLA.
Considerando estos resultados, hemos aplicado la polı́tica
dinámica a su vez en el diseño basado en contadores de MO-
(a) M88x3329 SFLA. Los speedups y eficiencias obtenidos son mostrados en
las columnas 8, 9 de la Tabla II. Conforme a estos resultados,
el mecanismo alternativo estudiado consigue mejorar de ma-
nera significativa la escalabilidad paralela del diseño original,
consiguiendo factores de aceleración medios de 7,8x (8 cores),
15,1x (16 cores), 28,7x (32 cores) y 40,7x (48 cores). A través
de un mayor equilibrado de tareas en el bucle paralelo de
procesamiento de memeplexes, esta alternativa permite reducir
los tiempos de espera entre hilos hasta un 72,1 % (M88x3329),
dando lugar a una reducción de hasta 92,0 % (M187x814) en
los tiempos de sincronización entre procesos. Como resultado,
el diseño basado en contadores obtiene una eficiencia media
(b) M187x814 de 84,7 % para 48 cores, representando una mejora notable
con respecto al 62,7 % de la versión original dinámica.
Para validar la bondad de estos resultados, la Figura 1
presenta una comparativa de rendimiento paralelo entre el
diseño original con planificación dinámica de MO-SFLA, el
diseño basado en contadores, y la herramienta filogenética
paralela IQ-TREE (la cual integra técnicas MPI+OpenMP)
[3]. Estos resultados dan cuenta de que el diseño original
dinámico obtiene una mejorı́a con respecto a IQ-TREE a
partir de escenarios de 32 / 48 cores para M187x814, ası́
como en M260x1781 y, especialmente, M355x1263. Por su
parte, el diseño basado en contadores presenta las mejores
(c) M260x1781 propiedades de escalabilidad de la comparativa, mejorando de
manera significativa los resultados de IQ-TREE en todos los
escenarios de evaluación considerados. Todo ello redunda en la
relevancia de la estrategia adoptada para minimizar problemas
de balanceo de carga en el diseño algorı́tmico de MO-SFLA.

IV-B. Resultados Biológicos


A continuación abordamos la validación de calidad de
solución del método, usando resultados medianos de 31 ejecu-
ciones independientes por instancia. En primer lugar, exami-
naremos el rendimiento multiobjetivo mediante el empleo de
la métrica de hipervolumen (usando los puntos de referencia
(d) M355x1263 definidos en [6]). En este contexto, es preciso señalar que,
para este problema, no se observaron diferencias estadı́stica-
Figura 1. Comparativas de Rendimiento Paralelo (MO-SFLA Original mente significativas entre las muestras de hipervolumen de la
Dinámico, MO-SFLA Basado en Contadores e IQ-TREE)
versión original de MO-SFLA y la versión basada en conta-
dores, de acuerdo a los tests de ANOVA / Wilcoxon-Mann-
Whitney [16]. La Tabla III introduce los valores medianos
rendimiento paralelo más satisfactorio en la comparativa, con de hipervolumen observados, en comparación a los obtenidos
eficiencias medias de 90,4 % (8 cores), 83,8 % (16 cores), por el algoritmo estándar NSGA-II [9]. MO-SFLA es capaz
73,1 % (32 cores) y 62,7 % (48 cores). En esta comparativa, de obtener valores de hipervolumen en el rango 75,39 % -
la polı́tica guiada representa un escenario intermedio, con 81,99 %, en comparación a los hipervolúmenes de 74,95 % -

691
XVIII Conferencia de la Asociación Española para la Inteligencia Artificial

Tabla III basadas en datos de secuencias de proteı́nas. Para el diseño


C OMPARATIVAS M ULTIOBJETIVO : H IPERVOLUMEN original, la aproximación dinámica dio lugar a un rendimiento
más satisfactorio que el resto de polı́ticas, mejorando la
Instancia MO-SFLA NSGA-II
eficiencia media del algoritmo de 55,2 % (versión estática) a
M88x3329 75,39±0,04 74,95±0,12
M187x814 77,58±0,58 76,20±0,58
62,7 % para 48 cores. Además, la introducción del mecanismo
M260x1781 80,71±0,23 77,46±0,91 alternativo de balanceo basado en contadores permitió ir un
M355x1263 81,99±0,19 80,52±0,22 paso más allá en la explotación de los recursos hardware,
demostrando eficiencias hasta de 88,8 % sin afectar signifi-
Tabla IV cativamente a la calidad de los frentes de Pareto generados.
C OMPARATIVAS F ILOGEN ÉTICAS : PARSIMONIA Como trabajo futuro, pretendemos afrontar la explotación de
recursos de computación heterogénea para acelerar el método
Instancia MO-SFLA TNT
propuesto, explorando alternativas dependientes e indepen-
M88x3329 33490 33490 dientes el problema. Se estudiarán a su vez estrategias adap-
M187x814 29847 29847
M260x1781 43529 43529 tativas para mejorar las capacidades de búsqueda en espacios
M355x1263 54823 54823 de decisión difı́ciles de abordar, ası́ como la evaluación del
diseño en otros problemas bioinformáticos.
Tabla V R EFERENCIAS
C OMPARATIVAS F ILOGEN ÉTICAS : V EROSIMILITUD
[1] E. Alba, G. Luque, and S. Nesmachnow, “Parallel metaheuristics: recent
Instancia MO-SFLA IQ-TREE GARLI advances and new trends,” International Transactions in Operational
Research, vol. 20, no. 1, pp. 1–48, 2013.
M88x3329 -149094,84 -149094,84 -149111,00 [2] P. Lemey, M. Salemi, and A.-M. Vandamme, The Phylogenetic Hand-
M187x814 -133871,90 -133871,96 -133876,72 book: a Practical Approach to Phylogenetic Analysis and Hypothesis
M260x1781 -163895,79 -163899,10 -163982,64 Testing. Cambridge: Cambridge Univ. Press, 2009.
M355x1263 -231186,34 -231301,11 -231859,24 [3] L. Nguyen, H. Schmidt, A. Haeseler, and B. Minh, “IQ-TREE: A fast
and effective stochastic algorithm for estimating maximum likelihood
phylogenies,” Mol. Biol. Evol., vol. 32, no. 1, pp. 268–274, 2015.
[4] A. L. Bazinet, D. J. Zwickl, and M. P. Cummings, “A Gateway for
80,52 % mostrados por NSGA-II. Estos resultados sugieren Phylogenetic Analysis Powered by Grid Computing Featuring GARLI
que MO-SFLA da lugar a la obtención de frentes de Pareto 2.0,” Systematic Biology, vol. 63, no. 5, pp. 812–818, 2014.
[5] W. Cancino, L. Jourdan, E.-G. Talbi, and A. C. B. Delbem, “Parallel
de calidad significativa en todas las instancias analizadas. Multi-Objective Approaches for Inferring Phylogenies,” in Proc. of
Las Tablas IV y V introducen comparativas de calidad EVOBIO’2010, ser. LNCS, vol. 6023. Springer, 2010, pp. 26–37.
biológica con otros métodos filogenéticos del estado del arte. [6] S. Santander-Jiménez, M. A. Vega-Rodrı́guez, and L. Sousa, “Multi-
objective Frog-Leaping Optimization for the Study of Ancestral Rela-
En la Tabla IV, comparamos dicha calidad desde la perspectiva tionships in Protein Data,” IEEE Trans. Evol. Comput., pp. 1–14 (DOI:
de parsimonia con respecto a la herramienta heurı́stica TNT 10.1109/TEVC.2017.2 774 599), 2018.
[17]. Según este criterio, el método multiobjetivo MO-SFLA [7] H. Matsuda, H. Yamashita, and Y. Kaneda, “Molecular Phylogenetic
Analysis using both DNA and Amino Acid Sequence Data and Its
es capaz de mantener, en todas las instancias analizadas, la Parallelization,” Genome Informatics, vol. 5, pp. 120–129, 1994.
calidad filogenética obtenida por TNT. Por su parte, la Tabla [8] A. Sarkheyli, A. M. Zain, and S. Sharif, “The role of basic, modified
V presenta una comparativa de resultados de verosimilitud con and hybrid shuffled frog leaping algorithm on optimization problems: a
review,” Soft Computing, vol. 19, no. 7, pp. 2011–2038, 2015.
IQ-TREE [3] y el algoritmo evolutivo GARLI [4]. Conforme [9] K. Deb, A. Pratap, S. Agarwal, and T. Meyarivan, “A Fast and Eli-
a los resultados obtenidos, MO-SFLA da lugar a una mejora tist Multi–Objective Genetic Algorithm: NSGA-II,” IEEE Trans. Evol.
en verosimilitud en las instancias con mayor número de se- Comput., vol. 6, no. 2, pp. 182–197, 2002.
[10] W. Gropp, W. Lusk, and A. Skjellum, Using MPI: Portable Parallel Pro-
cuencias, confirmando la bondad de las soluciones generadas. gramming with the Message Passing Interface. 3rd edition. Cambridge,
MA, USA: The MIT Press, 2014.
V. C ONCLUSIONES [11] R. van der Pas, E. Stotzer, and C. Terboven, Using OpenMP - The Next
Este trabajo ha versado sobre la evaluación de diseños pa- Step. Cambridge, MA, USA: The MIT Press, 2017.
[12] I. Morgenstern et al., “A molecular phylogeny of thermophilic fungi,”
ralelos y polı́ticas de planificación para solucionar problemas Fungal Biology, vol. 116, no. 4, pp. 489–502, 2012.
de balanceo de carga en métodos metaheurı́sticos. Usando [13] A. Kovalchuk, A. Kohler, F. Martin, and F. O. Asiegbu, “Diversity
como caso de estudio una metaheurı́stica multiobjetivo para and evolution of ABC proteins in mycorrhiza-forming fungi,” BMC
Evolutionary Biology, vol. 15, no. 249, pp. 1–19, 2015.
reconstrucción filogenética, MO-SFLA, hemos identificado las [14] R. Stracke et al., “Genome-wide identification and characterisation of
distintas fuentes de desequilibrio de carga presentes en su R2R3-MYB genes in sugar beet (Beta vulgaris),” BMC Plant Biology,
diseño algorı́tmico. Para afrontarlos, hemos considerado el uso vol. 14, no. 249, pp. 1–17, 2014.
[15] P. J. Dias and I. Sá-Correia, “The drug:H+ antiporters of family 2
de distintas polı́ticas de planificación del estándar OpenMP (DHA2), siderophore transporters (ARN) and glutathione:h+antiporters
(estática, dinámica y guiada), ası́ como una aproximación (GEX) have a common evolutionary origin in hemiascomycete yeasts,”
algorı́tmica alternativa basada en el empleo de contadores para BMC Genomics, vol. 14, no. 901, pp. 1–22, 2013.
[16] D. J. Sheskin, Handbook of Parametric and Nonparametric Statistical
equilibrar la carga de trabajo de los hilos de ejecución. Procedures. 5th edition. NY, USA: Chapman & Hall/CRC, 2011.
Hemos evaluado experimentalmente las técnicas planteadas [17] P. A. Goloboff and S. A. Catalano, “TNT version 1.5, including a
en un clúster multicore compuesto por 48 núcleos de proce- full implementation of phylogenetic morphometrics,” Cladistics, vol. 32,
no. 3, pp. 221–238, 2016.
samiento, empleando para ello cuatro instancias del problema

692
XIII Congreso Español en Metaheurı́sticas y Algoritmos Evolutivos y Bioinspirados

Developing Genetic Algorithms using Different


MapReduce Frameworks: MPI vs. Hadoop*
* Note: The full contents of this paper have been published in the volume Lecture Notes in Artificial Intelligence 11160 (LNAI 11160)

Carolina Salto Gabriela Minetti Enrique Alba, Gabriel Luque


Facultad de Ingenierı́a CONICET Departamento de Lenguajes
Universidad Nacional de La Pampa Argentina Universidad de Málaga
Argentina saltoc@ing.unlpam.edu.ar Málaga, Spain
minettig@ing.unlpam.edu.ar {eat,gabriel}@lcc.uma.es

Abstract—MapReduce is a quite popular paradigm, which


allows to no specialized users to use large parallel computational
platforms in a transparent way. Hadoop is the most used
implementation of this paradigm, and in fact, for a large amount
of users the word Hadoop and MapReduce are interchangable.
But, there are other frameworks that implement this program-
ming paradigm, such as MapReduce-MPI. Since, optimization
techniques can be greatly beneficiary of this kind of data-
intensive computing modeling, in this paper, we analyze the
performance effect of developing genetic algorithms (GA) using
different frameworks of MapReduce (MRGA). In particular, we
implement MRGA using Hadoop and MR-MPI frameworks.
We analyze and compare both implementations considering
relevant aspects such as efficiency and scalability to solve a large
dimension problem. The results show a similar efficiency level
between the algorithms but Hadoop presents a better scalability.
Index Terms—

693
XIII Congreso Español
de Metaheurísticas,
Algoritmos Evolutivos y
Bioinspirados
(XIII MAEB)
MAEB 9: SESIÓN E SPECIAL:
A PLICACIONES EN M EDICINA
Y B IOTECNOLOGÍA

Organizadores:
JOSÉ M ANUEL COLMENAR Y JOSÉ IGNACIO H IDALGO
XIII Congreso Español en Metaheurı́sticas y Algoritmos Evolutivos y Bioinspirados

Strain Design as Multiobjective Network


Interdiction Problem: A Preliminary Approach*
* Note: The full contents of this paper have been published in the volume Lecture Notes in Artificial Intelligence 11160 (LNAI 11160)

Marina Torres Shouyong Jiang David Pelta Marcus Kaiser


Dept. of Computer Science and A.I. School of Computing Dept. of Computer Science and A.I. School of Computing
Universidad de Granada Newcastle University Universidad de Granada Newcastle University
Granada, Spain Newcastle, U.K. Granada, Spain Newcastle, U.K.
torresm@decsai.ugr.es math4neu@gmail.com dpelta@decsai.ugr.es marcus.kaiser@ncl.ac.uk

Natalio Krasnogor
School of Computing
Newcastle University
Newcastle, U.K.
natalio.krasnogor@ncl.ac.uk

Abstract—Computer-aided techniques have been widely ap-


plied to analyse the biological circuits of microorganisms and
facilitate rational modification of metabolic networks for strain
design in order to maximise the production of desired bio-
chemicals for metabolic engineering. Most existing computational
methods for strain design formulate the network redesign as a
bilevel optimisation problem. While such methods have shown
great promise for strain design, this paper employs the idea of
network interdiction to fulfil the task. Strain design as a Multiob-
jective Network Interdiction Problem (MO-NIP) is proposed for
which two objectives are optimised (biomass and bioengineering
product) simultaneously in addition to the minimisation of the
costs of genetic perturbations (design costs). An initial approach
to solve the MO-NIP consists on a Nondominated Sorting Genetic
Algorithm (NSGA-II). The shown examples demonstrate the
usefulness of the proposed formulation for the MO-NIP and the
feasibility of the NSGA-II as a problem solver.
Index Terms—strain design, network interdiction, metabolic
networks, multiobjective bilevel optimisation

697
XVIII Conferencia de la Asociación Española para la Inteligencia Artificial

Un análisis de soluciones basadas en


Programación Genética para resolver
problemas de regresión simbólica de datos de
medidores continuos de glucosa
J. Ignacio Hidalgo, José Manuel Velasco, Juan Lanchares, Sergio Contador y Oscar Garnica
Universidad Complutense de Madrid
C/. Prof. José Garcı́a Santesmases 9, 28040, Madrid, España
Email: hidalgo@dacya.ucm.es

Resumen—Diabetes es el nombre de un grupo de en- paciente puede desarrollar complicaciones graves a lar-
fermedades metabólicas asociadas con la incapacidad del go plazo, incluyendo enfermedades cardiacas, ceguera,
cuerpo para regular los niveles de glucosa en sangre. Una insuficiencia renal o úlceras en los pies [3, 4].
solución ideal para la diabetes serı́a un páncreas artificial
que fuera capaz de mantener un buen control de los La DMT1 solo puede tratarse con insulina sintética
niveles de azúcar en la sangre y permitir que el paciente inyectada en el torrente sanguı́neo. Sin embargo, esta
tenga una vida normal, retrasando al mismo tiempo la no es una tarea fácil. Una dosis excesiva de insulina
aparición de complicaciones. Debido a esto, un páncreas puede producir hipoglucemia (definida como un valor
artificial necesita realizar predicciones precisas de la de glucosa en sangre inferior a 70 mg/dl). Si la
evolución de la glucosa utilizando diferentes horizontes de
tiempo. En este artı́culo analizamos diversas técnicas para hipoglucemia es muy grave (glucosa inferior a 50
la predicción de la glucosa. En concreto, comparamos mg/dl), puede llevar a la pérdida del conocimiento
la programación genética con selección estricta, una y a un coma diabético. En la Figura 1 podemos ver
aproximación más tradicional de programación genética la evolución de los niveles de glucosa en sangre en
y ARIM A con ventana de 24 y 48 horas. El análisis de un paciente diabético. Se observa como los niveles
los resultados se realiza utilizando las métricas Clarke
Error Grid y Parkes Error Grid. de glucosa se encuentran en la zona de hiperglucemia
durante un periodo largo de tiempo y, los episodios de
I. I NTRODUCCI ÓN hiperglucemia grave o hipoglucemia son frecuentes.
Algunos pacientes con complicaciones graves han
El páncreas es una glándula del sistema endocrino sido operados mediante un trasplante de páncreas, pero
que produce insulina y glucagón. Estas dos hormonas esta opción puede producir varios problemas nuevos.
mantienen los niveles de glucosa en sangre dentro El paciente trasplantado debe tomar medicamentos
de los rangos óptimos y regulan el metabolismo de inmunosupresores para evitar que su sistema inmune
los carbohidratos. Existe un grupo de enfermedades ataque su nuevo páncreas, y este tratamiento puede
metabólicas asociadas con la incapacidad del cuerpo coadyuvar al desarrollo de infecciones bacterianas o
para regular el metabolismo que pueden producir ni- virales y cáncer. Una solución ideal para la DMT1 serı́a
veles elevados de glucosa en sangre durante un periodo un Páncreas Artificial (PA) [5] capaz de mantener el
de tiempo prolongado. Estas enfermedades se llaman control de los niveles de azúcar en la sangre y permitir
Diabetes [1]. En 2015, se estimó que más de 415 que el paciente tenga una vida normal, evitando al
millones de personas en todo el mundo la padecı́an mismo tiempo, o al menos retrasando, la aparición
[2]. La Diabetes Mellitus Tipo 1 (DMT1), que suele de complicaciones. En la Figura 2 se muestra la
manifestarse en edades tempranas, representa el 10 % estructura básica de un PA. Uno de los componentes es
de este número. La DMT1 es un trastorno autoinmune un sistema continuo de monitorización de la glucosa
crónico por el que el sistema inmune ataca las células que consiste en un biosensor [6, 7] (generalmente un
secretoras de insulina del páncreas. El resultado es que sensor que mide el nivel de glucosa intersticial [8]) y
las células no asimilan el azúcar y, como consecuencia, un transmisor inalámbrico. El otro componente es un
hay un aumento en los niveles de glucosa en sangre dispositivo integrado con varias funcionalidades. Por
que se conoce como hiperglucemia (niveles de glucosa un lado, recibe las muestras de glucosa y las almacena.
en sangre superiores a 140 mg/dl). Si esta situación Por otro lado, controla una bomba de insulina; un
se extiende durante un largo periodo de tiempo, el dispositivo que inyecta bolos de insulina en el torrente

698
XIII Congreso Español en Metaheurı́sticas y Algoritmos Evolutivos y Bioinspirados

sanguı́neo. Para determinar la cantidad de insulina, el nal de programación genética y el método ARIM A
dispositivo tiene en cuenta varios factores, entre los que con ventana de 24 y 48 horas. Además, queremos
se encuentran el tipo y las caracterı́sticas de la insulina. ver si los resultados tienen una interpretación correcta
Principalmente, hay cuatro tipos de insulinas (insulina comparándolos utilizando las métricas de Clarke Error
de acción rápida, de acción corta, de acción intermedia Grid y Parkes Error Grid.
y de acción lenta) que se clasifican dependiendo del
tiempo de retraso antes de que comiencen a actuar Blood Glucose Levels − 8 Days

(inicio), el momento en que la insulina alcanza su Region


Severe−Hyperglycemia
máximo efecto (pico) y la demora final hasta que cesa Hyperglycemia
Hypoglycemia

su efecto (duración). La insulina de acción rápida, 300

Legend
Glucose
tiene un inicio entre 5-15 minutos, un pico entre 30-60
minutos y una duración entre 3-5 horas. La insulina de
acción corta o regular, tiene un inicio de 30 minutos,

Glucose
un pico entre 2-3 horas y una duración entre 3-6 horas. 200

La insulina de acción intermedia, tiene un inicio entre


2-4 horas, un pico entre 4-12 horas y una duración
entre 12-18 horas. La insulina de acción lenta tiene
un inicio entre 1-2 horas, un pico entre 6-8 horas 100

y una duración entre 6-23 horas, dependiendo de la


dosis suministrada. Debido a esto, surge la necesidad 0 200 400 600 800

de realizar predicciones precisas de la evolución de la Samples

glucosa utilizando diferentes horizontes de tiempo. Figura 1: Valores de Glucosa Reales - 8 Dı́as
Esta investigación está motivada por el desafı́o de
predecir con precisión los niveles futuros de glucosa
para que un sistema automático pueda decidir cuándo
y cuánta insulina inyectar a fin de mantener el nivel
de azúcar en la sangre en un rango saludable. Al
mismo tiempo, es muy importante para un sistema de
control de la glucosa en sangre, evitar las predicciones
que puedan desencadenar tratamientos innecesarios o,
incluso peor, tratamientos que son perjudiciales para el
paciente. Aunque hay algunas aproximaciones clásicas,
todavı́a hay mucho trabajo por hacer para las predic-
ciones dentro de un horizonte de más de 60 minutos.
Una solución que ha demostrado ser adecuada para
predecir los niveles de glucosa es la utilización de
algoritmos basados en la Evolución Gramatical (EG)
[9]. Sin embargo, uno de los principales obstáculos
que encontraron los investigadores para entrenar a los Figura 2: Páncreas Artificial
modelos de EG es la escasez de cantidades signifi-
cativas de datos. Como en muchos otros campos de El resto del artı́culo está organizado de la siguiente
la medicina, la recopilación de datos de pacientes manera. La sección II describe los antecedentes teóri-
diabéticos reales es muy compleja. Los modelos de cos de las técnicas empleadas y explica en detalle
EG entrenados con un pequeño conjunto de datos, por nuestra metodologı́a. El trabajo experimental y los
lo general, sufren de sobreajuste y tienen un poder resultados se muestran en la sección III.
de predicción limitado. Para evitar esta situación, en
[10] se ha propuesto aumentar los registros de datos II. M ÉTODOS
de glucosa con datos sintéticos con buenos resultados. Nuestra propuesta es aplicar varias técnicas de
También se han realizado otras comparativas entre aprendizaje con el fin de obtener modelos personali-
técnicas relacionadas con la EG, como la Programación zados para la predicción del nivel de glucosa de cada
Genética (PG) con selección estricta. Sin embargo, esta paciente siguiendo un enfoque en el que los modelos
última tiene un alto tiempo de ejecución. se extraen de los datos. Llevaremos a cabo una primera
En este artı́culo investigamos otras opciones; en fase de entrenamiento sobre un conjunto de datos de
concreto queremos comparar la programación genética pacientes que producirán un número de modelos que
con selección estricta, una aproximación más tradicio- se evaluarán en una fase de prueba con datos de

699
XVIII Conferencia de la Asociación Española para la Inteligencia Artificial

los mismos pacientes. Consideramos una ventana de En este artı́culo vamos a utilizar el modelo de
predicción de 2 horas. Los datos están disponibles absorción de Berger y Rodband [11] que describe la
en forma de series temporales con observaciones a farmacocinética para distintos tipos de insulina.
intervalos de cinco minutos. Se adquieren las series de A partir de las series temporales de glucosa, insulina
glucosa, ingestas de carbohidratos e insulinas. Hemos y carbohidratos, definimos un conjunto de caracterı́sti-
transformado este problema de predicción de series cas que describimos a continuación.
de tiempo en múltiples problemas de regresión inde- Agregamos los valores de las series en intervalos de
pendientes, donde el objetivo es encontrar modelos tiempo que se calculan utilizando la siguiente ecuación:
independientes para la predicción de la glucosa en
P
sangre a 2 horas. De esta manera podemos aplicar i∈rango (Xi+1 )
cualquier técnica de regresión, incluida la regresión media(X, t, rango) = (2)
|rango|
simbólica usando PG.
Un inconveniente de esta transformación es que los El objetivo es reducir el número de caracterı́sticas
modelos no nos permiten hacer predicciones sobre utilizadas para generar los modelos. Para cada instante
ningún otro punto de la ventana de predicción. Sin de tiempo t definimos el conjunto de caracterı́sticas
embargo, esto no es un problema desde un punto de F (t) que describen los valores históricos Fhis de las
vista práctico, ya que para los pacientes diabéticos es series temporales G, I y C, ası́ como los valores
suficiente con predecir los valores de cuatro puntos futuros Ff ut de I y C:
distintos en la ventana de predicción. La ventaja es
que podemos utilizar los datos de los sistemas de F (t) = Fhis (G, t) ∪ Fhis (I, t) ∪ Fhis (C, t)∪
(3)
Monitorización Continua de la Glucosa (MCG) di- Ff ut (I, t) ∪ Ff ut (C, t) ∪ {G, I, C}
rectamente para hacer recomendaciones de insulina
basadas en distintos horizontes temporales, utilizando Fhis (X, t) = {media(X, t, [−15, 0]),
las ecuaciones dadas por los modelos obtenidos.
media(X, t, [−30, −15]),
Nuestro objetivo es obtener el siguiente modelo:
media(X, t, [−45, −30]),
Ĝt+120 =ft+120 ((Gt+i , i ∈ (−240 . . . 0)), (4)
(1) media(X, t, [−60, −45]),
(It+i , Ct+i , i ∈ (−240 . . . + 120)) media(X, t, [−90, −60]),
donde t es el tiempo en minutos y estamos haciendo media(X, t, [−120, −90])}
predicciones hasta 120 minutos. G es la serie temporal
de valores medidos de concentración de glucosa en Ff ut (X, t) = {media(X, t, [0, 15]),
sangre, I es la serie temporal de insulina (bomba y media(X, t, [15, 30]),
bolo), y C es la cantidad de carbohidratos ingeridos
media(X, t, [30, 45]),
según lo estimado por los pacientes. En cada instante
temporal, los datos de t de hasta 4 horas antes están media(X, t, [45, 60]),
(5)
disponibles para la predicción. Para generar los mo- media(X, t, [60, 75]),
delos de predicción ft+120 usamos ARIM A y PG media(X, t, [75, 90]),
basada en árboles para la evolución de los modelos
media(X, t, [90, 105]),
de regresión simbólica. Adicionalmente, consideramos
dos predictores de referencia: Last y Avg. El primero media(X, t, [105, 120])}
considera la predicción como el último valor de gluco- II-B. Programación Genética
sa conocido. El segundo considera la predicción como
Para cada paciente se crean cuatro modelos dife-
la glucosa media de los últimos valores conocidos en
rentes basados en programación genética (P G, P G2,
un intervalo de 2 horas.
P G2com y P GOS) para predecir el nivel de glucosa a
II-A. Preprocesado de datos 2 horas. Se utiliza validación cruzada de 10 iteraciones
(10-fold Cross-Validation).
Los pacientes diabéticos pueden inyectarse insulina Cada modelo se generó usando el algoritmo de
de dos formas: mediante múltiples dosis de insulina regresión simbólica basada en programación genética
inyectada manualmente o mediante una bomba (infu- disponible en el software de código abierto Heuris-
sor continuo) de insulina. Existen tres categorı́as de ticLab versión 3.3.15 [12]. Para el conjunto de ter-
insulina: minales utilizamos las series temporales de glucosa,
Insulina Basal insulina, y carbohidratos para los modelos P G, P G2
Insulina Preprandial y P GOS; para P G2com utilizamos además las carac-
Insulina Correctora terı́sticas precalculadas en el apartado Preprocesado

700
XIII Congreso Español en Metaheurı́sticas y Algoritmos Evolutivos y Bioinspirados

de datos. En todos los modelos utilizamos también de Pearson entre los valores reales de glucosa en
constantes. Cada valor se acompaña con un peso de sangre y los valores obtenidos con el modelo [17].
valor real que se inicializa aleatoreamente usando una Los modelos de predicción finalmente seleccionados
distribución Normal N (µ = 1, σ = 1), y se muta se escalan linealmente para minimizar la suma de
aleatoriamente añadiendo un valor muestreado de N (µ los errores al cuadrado entre los valores reales y los
= 0, σ = 0.05). Las constantes con valores reales son resultados del modelo.
inicializadas al azar usando una distribución uniforme
U (-20.0, 20.0), y la mutación de constantes agrega un II-C. ARIMA
valor muestreado de N (µ = 0, σ = 1.0). El modelo autorregresivo integrado de media móvil
El conjunto de funciones utilizado es: {+, −, ∗, o ARIM A (Auto Regressive Integrated Moving Ave-
/, log(x), exp(x)}, donde se utilizan las variantes rage) es un modelo estadı́stico que utiliza variacio-
protegidas de las funciones división y logaritmo [13]. nes y regresiones de los datos, en particular series
Los modelos en la población inicial se han generado temporales, con el fin de encontrar los parámetros
usando Probabistic Tree Creator (PTC) [14] utilizan- del modelo más adecuados para predecir los valores
do diferentes tamaños para la población, y para los futuros. Se suele expresar como ARIM A(p, d, q),
árboles un lı́mite para la profundida máxima y un donde los parámetros p, d y q, indican el orden de las
máximo número de nodos permitidos. Las mismas distintas componentes del modelo (p es la componente
restricciones de profundidad y tamaño se han aplicado autorregresiva, d la integrada y q la media móvil). Si se
en las operaciones de cruce y mutación. Para el cruce, considera el efecto de la estacionalidad de los datos, el
utilizamos un operador de cruce de subárbol. Para la modelo toma la forma ARIM A(p, q, d)(P, Q, D)m , y
mutación utilizamos una variedad de operadores que está dado por la siguiente ecuación:
reemplaza un subconjunto completo del árbol con un
árbol inicializado al azar, o mutan todos los nodos del Φ(B m )φ(B)(1 − B m )D (1 − B)d yt =
árbol, o mutan solo un nodo del árbol seleccionado de (6)
c + Θ(B m )θ(B)εt
forma aleatoria. El operador de mutación seleccionado
al azar se ejecuta después de cada operación de cruce donde εt es ruido blanco con media 0 y varianza
con una tasa de mutación diferente. Utilizamos un σ 2 , B es el operador de retroceso, y φ(z), θ(z),
número máximo de generaciones y selección de aptitud Φ(z)yΘ(z), son polinomios de orden p, q, P y Q,
proporcional de padres. No hemos sintonizado los respectivamente.
parámetros de la PG especı́ficamente para esta tarea Uno de los principales problemas en el uso de los
de modelado, pero utilizamos configuraciones estándar modelos ARIM A es que el proceso de selección del
robustas. orden de las componentes generalmente se considera
Para P G y P GOS, utilizamos un tamaño de po- subjetivo y difı́cil de aplicar. Por eso, hemos utilizado
blación de 100 individuos y una profundidad máxima el modelo estacional auto.arima [18] con el software
de árbol de 8. El número máximo de generaciones es libre de análisis estadı́stico R versión 3.3.1 [19], que
25 con una tasa de mutación del 25 %. Para P G2 busca de forma automática las componentes del mo-
y P G2com , utilizamos un tamaño de población de delo seleccionando el orden apropiado.
300 individuos y una profundidad máxima de árbol
de 11. El número máximo de generaciones es 100 II-D. Clarke-Parkes Error Grid
con una tasa de mutación del 15 %. En todos los La precisión de las predicciones se analizan con
casos utilizamos un máximo número de nodos de árbol Clarke Error Grid y Parkes Error Grid. Clarke Error
permitidos de 100. Grid [20] se desarrolló para calcular la precisión clı́nica
En el caso de P GOS utilizamos selección estricta de los sistemas de MCG en sangre para todo el rango
de descendientes [15]. Cuando se usa selección estricta, de valores de glucosa, mediante las diferencias entre
los descendientes solo se aceptan si son mejores que los valores medidos por el sistema de medición y
ambos padres, en caso contrario son descartados. Esto los valores de referencia. Análogamente, se puede
tiene el efecto de que múltiples intentos repetidos de utilizar para calcular las diferencias entre los valores
selección de padres, el cruce, la mutación opcional y estimados en una predicción y los valores reales o de
la evaluación de la aptitud, son necesarios hasta que referencia. Los valores se representan en un gráfico con
uno de los descendientes se agrega a la población de coordenadas cartesianas donde el eje X representa los
la próxima generación [16]. El umbral de presión de valores reales y el eje Y los valores de la predicción,
selección para detener el algoritmo se estableció en siendo Y = X la predicción ideal, donde el valor real
100. coincide con el valor de la predicción. La particulari-
La función objetivo utilizada en todos los casos dad de esta representación es que el gráfico se divide
se calcula con el coeficiente de determinación R2 en cinco zonas dependiendo del grado de precisión

701
XVIII Conferencia de la Asociación Española para la Inteligencia Artificial

de las estimaciones de la glucosa. A continuación Tabla I: Número de observables disponibles para cada
describimos cada una de las zonas: paciente.
Paciente Observables
Zonas A y B: los valores en la zona A representan 559 10149
los valores de glucosa que se desvı́an de los 563 11853
valores de referencia menos del 20 %, o aquellos 570 10580
575 11697
que están en el rango de hipoglucemia (<70 588 12395
mg/dl), cuando la referencia es también <70 591 10601
mg/dl. Los valores en la zona B se desvı́an de los
valores de referencia en más del 20 %, aunque
el tratamiento clı́nico será correcto con una alta Tabla II: Caracterı́sticas de cada paciente para los
probabilidad. Los valores que se encuentran den- niveles de glucosa.
tro de las zonas A y B son clı́nicamente exactos Paciente Media Std T G<70 T G>250 T G[70,180]
y/o aceptables y, por lo tanto, el tratamiento [mg/dl] [mg/dl] [ %] [ %] [ %]
será clı́nicamente correcto. Tratamos estas dos 559 167.22 70.50 3.95 13.11 55.54
563 145.73 49.43 2.10 2.35 74.86
zonas de forma combinada en el análisis de los 570 187.22 62.37 1.80 17.16 43.75
resultados de nuestro experimento. 575 139.76 58.06 8.04 4.57 70.21
Zona C: los valores en esta zona pueden ser 588 165.09 50.60 0.94 4.96 63.47
591 156.83 57.38 3.02 7.03 64.62
peligrosos en algunas situaciones. El objetivo es
minimizar las predicciones incluidas en esta zona.
Zonas D-E: los valores incluidos en estas zonas Tabla III: Tiempos medios de ejecución de los modelos
son potencialmente peligrosos, ya que la predic- junto con su desviación tı́pica.
ción está lejos de ser aceptable y el tratamiento
Modelo Tiempo
indicado será diferente del correcto, y contrario [min]
en la zona E. De nuevo, el objetivo es minimizar PG 1.54 ± 0.14
las predicciones incluidas en esta zona. ARIM A 24h 15.18 ± 2.24
P G2com 19.76 ± 1.62
Parkes Error Grid [21] se publicó en 2000 como P G2 20.11 ± 1.73
ARIM A 48h 24.40 ± 4.42
una alternativa al uso de Clarke Error Grid. En él se P GOS 1453.43 ± 140.60
redefinen las zonas basándose en las zonas de Clarke
y en los lı́mites establecidos por 100 médicos expertos
en diabetes en una encuesta realizada en la conferencia Tabla IV: Predicciones (en porcentaje) a 2h obtenidas
American Diabetes Association Meetings de junio de para las distintas zonas con Clarke-Parkes Error Grid
1994. Estas definiciones son más flexibles, y permiten con ARIM A con entrenamiento de 24h y 48h.
incorporar el conocimiento de expertos para asignar las Paciente
zonas basándose en su experiencia.
Zona 559 563 570 575 588 591

Clarke con Entrenamiento de 24h


A 39.94 45.65 58.52 40.90 52.29 40.22
III. R ESULTADOS E XPERIMENTALES B 44.87 47.83 34.41 45.34 42.96 49.16
C 8.06 3.31 3.91 3.95 1.72 3.76
D 5.59 2.68 2.74 7.47 2.48 5.21
Se realiza un estudio retrospectivo de seis pacien- E 1.54 0.53 0.43 2.34 0.55 1.65
tes con DMT1. Los datasets utilizados proceden de Parkes con Entrenamiento de 24h
A 43.13 46.47 61.99 43.18 52.78 42.75
la Universidad de Ohio [22]. En concreto, hay dos B 42.43 45.55 32.55 42.01 41.66 46.91
hombres (563 y 570) y cuatro mujeres (559, 575, 588 C 12.25 7.47 4.96 12.69 5.08 8.78
y 591). Los datos son recolectados durante un periodo D 2.17 0.51 0.50 2.11 0.48 1.56
E 0.01 0.00 0.00 0.01 0.00 0.00
de ocho semanas mediante MCG intersticial registrada Clarke con Entrenamiento de 48h
con el sistema Medtronic 530G ( Medtronic).
c Todos A 38.01 46.81 61.30 41.93 52.75 41.95
los pacientes siguen una terapia con bomba de insulina. B 47.67 47.42 33.61 44.33 42.92 48.43
El número de observables por paciente que tenemos C 6.19 2.23 2.33 3.54 1.27 2.80
D 6.95 2.98 2.59 8.24 2.68 5.29
se muestran en la Tabla I. Las caracterı́sticas de cada E 1.17 0.56 0.17 1.95 0.38 1.54
paciente se muestran en la Tabla II. Para cada paciente Parkes con Entrenamiento de 48h
se calcula la glucosa media, la desviación estándar, A 40.23 47.32 63.93 43.99 53.03 43.67
B 45.67 45.59 31.00 41.23 41.44 45.66
y los porcentajes de tiempo donde el paciente tiene C 12.32 6.53 4.79 12.79 5.00 8.85
niveles de glucosa por debajo de 70 mg/dl, por encima D 1.79 0.57 0.28 1.97 0.53 1.79
de 250 mg/dl, y en el rango [70, 180] mg/dl. E 0.00 0.00 0.00 0.01 0.00 0.04

702
XIII Congreso Español en Metaheurı́sticas y Algoritmos Evolutivos y Bioinspirados

Las Tablas IV, V y VI (V y VI en ANEXO I) SpringerBriefs in Applied Sciences and Technology,


recogen los resultados para ARIM A y PG para las 2013.
distintas zonas en términos de los errores Clarke y [7] Eun-Hyung Yoo and Soo-Youn Lee. Glucose biosen-
sors: An overview of use in clinical practice. Sensors,
Parkes. 10(5):4558–4576, 2010.
Podemos observar que en algunos pacientes en los [8] Alexander Hildenbrand Hansen, Anne Katrine
que el control es muy bueno, las técnicas funcionan Duun-Henriksen, Rune Juhl, Signe Schmidt, Kirsten
de una manera similar. No obstante, el mejor modelo Nørgaard, John Bagterp Jørgensen, and Henrik
generado que más porcentajes de valores tiene en las Madsen. Predicting plasma glucose from interstitial
glucose observations using bayesian methods. Journal
zonas A y B es P G2com , donde el porcentaje medio of Diabetes Science and Technology, 8(2):321–330,
en las zonas ha sido 91.95 ± 4.27 [ %]. El modelo 2014.
generado con PG que más porcentajes de valores tiene [9] J. Ignacio Hidalgo, Esther Maqueda, José L. Risco-
en las zonas A y B es P G2com (aparece en 8 de los 12 Martı́n, Alfredo Cuesta-Infante, J. Manuel Colmenar,
casos). El segundo modelo es P GOS (aparece en 4 de and Javier Nobel. glucmodel: A monitoring and mo-
deling system for chronic diseases applied to diabetes.
los 12 casos). Comparando P G con P GOS, el modelo Journal of Biomedical Informatics, 48:183 – 192, 2014.
mejora cuando se utiliza selección de descendencia. [10] Jose Manuel Velasco, Oscar Garnica, Juan Lanchares,
Comparando P G2 con P G2com , el modelo mejora Marta Botella, and J. Ignacio Hidalgo. Combining
cuando se utlizan más variables (en este caso las data augmentation, edas and grammatical evolution for
caracterı́sticas) para entrenarlo. El modelo generado blood glucose forecasting. Memetic Computing, Jun
2018.
con ARIM A que más porcentajes de valores tiene en [11] Markus Berger and David Rodbard. Computer simula-
las zonas A y B es ARIM A con entrenamiento de 48h tion of plasma insulin and glucose dynamics after sub-
(aparece en 11 de los 12 casos). El modelo ARIM A cutaneous insulin injection. Diabetes care, 12(10):725–
mejora cuando se utiliza un periodo de tiempo de 736, 1989.
entrenamiento más largo. [12] S. Wagner and M. Affenzeller. Heuristiclab: A generic
and extensible optimization environment. pages 538–
El modelo P GOS no obtiene mejores resultados 541, 2005.
en la predicción a 2 horas. Por lo tanto, el tiempo [13] John R. Koza. Genetic Programming: On the Program-
empleado en la obtención del modelo (Tabla III) puede ming of Computers by Means of Natural Selection. MIT
ser fundamental para la calidad de las predicciones y Press, Cambridge, MA, USA, 1992.
para la seguridad del paciente. También constatamos [14] Sean Luke. Two fast tree-creation algorithms for ge-
netic programming. IEEE Trans. Evolutionary Compu-
que la métrica Parkes es más precisa que Clarke y por tation, 4:274–283, 2000.
consiguiente, más conveniente. [15] M. Affenzeller and S. Wagner. Offspring selection: A
new self-adaptive selection scheme for genetic algo-
AGRADECIMIENTOS rithms. pages 218–221, 2005.
Este trabajo ha sido financiado por el Ministerio [16] Michael Affenzeller, Stephan Winkler, Stefan Wagner,
de Economı́a y Competitividad de España a través and Andreas Beham. Genetic algorithms and genetic
programming: Modern concepts and practical applica-
de los proyectos con referencias TIN2014-54806-R y tions. 01 2009.
TIN2015-65460-C2. [17] Maarten Keijzer. Improving symbolic regression with
interval arithmetic and linear scaling. pages 70–82,
2003.
R EFERENCIAS [18] Rob Hyndman and Yeasmin Khandakar. Automatic
[1] Leonid Poretsky Ed. Principles of Diabetes Mellitus - time series forecasting: The forecast package for r.
2017. Springer International Publishing, 2017. Journal of Statistical Software, Articles, 27(3):1–22,
[2] James Stephen Krinsley and Richard L. Jones. Cost 2008.
analysis of intensive glycemic control in critically ill [19] R Core Team. R: A Language and Environment for
adult patients. Chest, 129(3):644 – 650, 2006. Statistical Computing. R Foundation for Statistical
[3] American Diabetes Association. Intensive diabetes Computing, Vienna, Austria, 2013.
treatment and cardiovascular outcomes in type 1 dia- [20] W.L. Clarke, D. Cox, L.A. Gonder Frederick, W. Carter,
betes: The dcct/edic study 30-year follow-up. Diabetes and S.L. Pohl. Evaluating clinical accuracy of systems
Care, 2016. for self-monitoring of blood glucose. Diabetes Care,
[4] Ya-Xiong Tao (Eds.). Glucose Homeostatis and the 10(5):622–628, September 1987.
Pathogenesis of Diabetes Mellitus. Progress in Mole- [21] Pardo S Ginsberg BH. Parkes JL, Slatin SL. A new
cular Biology and Translational Science 121. Academic consensus error grid to evaluate the clinical significance
Press, 1 edition, 2014. of inaccuracies in the measurement of blood glucose.
[5] Giuseppe De Nicolao, Lalo Magni, Chiara Dalla Man, Diabetes Care, 23(8):1143–1148., 2000.
and Claudio Cobelli. Modeling and control of diabetes: [22] Cindy Marling and Razvan Bunescu. The ohiot1dm
Towards the artificial pancreas. {IFAC} Proceedings dataset for blood glucose level prediction - draft.
Volumes, 44(1):7092 – 7101, 2011. 18th {IFAC} World
Congress.
[6] Emma P. Córcoles and Martyn G. Boutelle. Biosen-
sors and Invasive Monitoring in Clinical Applications.

703
XVIII Conferencia de la Asociación Española para la Inteligencia Artificial

A NEXO I

Tabla V: Predicciones (en porcentaje) obtenidas para las distintas zonas con Clarke Error Grid para las medias y
desviaciones tı́picas de los valores obtenidos con validación cruzada de cada paciente para los distintos modelos
con horizonte de tiempo a 2 horas.
t+120 train t+120 test
Modelo A+B C D E A+B C D E
Paciente 559
Avg 84.4 ± 0.6 1.1 ± 0.2 0.1 ± 0.4 1.5 ± 0.2 81.9 ± 7.2 5.2 ± 9.2 11.1 ± 6.9 1.8 ± 2.2
Last 84.8 ± 0.8 7.3 ± 0.4 6.6 ± 0.3 1.3 ± 0.1 84.8 ± 6.9 7.3 ± 3.7 6.6 ± 2.5 1.3 ± 1.0
PG 88.1 ± 1.3 1.2 ± 0.4 10.2 ± 2.9 0.5 ± 0.2 88.3 ± 5.6 1.2 ± 0.9 10.1 ± 3.5 0.5 ± 0.5
P G2 89.3 ± 0.6 1.3 ± 0.1 8.8 ± 0.5 0.6 ± 0.1 89.2 ± 4.4 1.4 ± 0.8 8.8 ± 2.8 0.5 ± 0.5
P G2com 90.2 ± 0.7 1.3 ± 0.2 8.1 ± 0.4 0.4 ± 0.0 90.0 ± 4.2 1.5 ± 0.9 8.1 ± 2.8 0.4 ± 0.4
P GOS 89.6 ± 0.5 1.4 ± 0.2 8.3 ± 0.4 0.6 ± 0.1 89.5 ± 4.9 1.6 ± 0.7 8.3 ± 2.7 0.6 ± 0.6
Paciente 563
Avg 94.4 ± 0.9 0.0 ± 0.0 5.2 ± 0.3 0.3 ± 0.1 94.3 ± 7.9 0.4 ± 0.9 4.8 ± 2.6 0.5 ± 1.1
Last 94.4 ± 0.3 2.1 ± 0.1 2.8 ± 0.2 0.6 ± 0.1 94.4 ± 2.6 2.1 ± 1.0 2.8 ± 2.1 0.6 ± 0.6
PG 94.9 ± 2.5 0.2 ± 0.1 4.7 ± 0.7 0.2 ± 0.1 94.8 ± 6.0 0.2 ± 0.3 4.7 ± 2.9 0.3 ± 0.4
P G2 94.8 ± 2.9 0.1 ± 0.1 5.0 ± 0.8 0.1 ± 0.1 94.2 ± 7.1 0.1 ± 0.3 5.5 ± 4.0 0.1 ± 0.3
P G2com 95.5 ± 0.7 0.3 ± 0.1 4.1 ± 0.3 0.2 ± 0.1 95.2 ± 6.7 0.3 ± 0.3 4.4 ± 2.8 0.2 ± 0.3
P GOS 95.4 ± 10.8 0.1 ± 0.0 4.3 ± 1.1 0.1 ± 0.1 94.8 ± 13.2 0.2 ± 0.3 4.8 ± 3.0 0.2 ± 0.4
Paciente 570
Avg 90.9 ± 1.4 1.6 ± 0.2 6.8 ± 0.7 0.7 ± 0.1 89.7 ± 10.0 2.9 ± 4.3 7.1 ± 7.5 0.3 ± 0.7
Last 94.6 ± 0.9 2.2 ± 0.2 2.9 ± 0.3 0.3 ± 0.0 94.6 ± 8.3 2.2 ± 1.5 2.9 ± 2.5 0.3 ± 0.4
PG 95.8 ± 2.4 1.0 ± 0.2 2.9 ± 0.7 0.3 ± 0.4 95.7 ± 10.7 0.9 ± 0.9 3.1 ± 3.1 0.2 ± 0.4
P G2 95.8 ± 1.1 0.9 ± 0.1 3.0 ± 0.3 0.2 ± 0.0 95.9 ± 10.4 1.0 ± 0.9 3.0 ± 3.0 0.2 ± 0.4
P G2com 96.2 ± 2.3 0.8 ± 0.1 2.6 ± 0.6 0.4 ± 0.4 96.0 ± 10.5 0.9 ± 0.7 2.8 ± 2.7 0.3 ± 0.4
P GOS 95.9 ± 1.0 0.9 ± 0.1 3.0 ± 0.3 0.2 ± 0.0 95.7 ± 9.9 0.9 ± 0.9 3.2 ± 3.2 0.2 ± 0.4
Paciente 575
Avg 85.6 ± 0.6 0.1 ± 0.1 13.9 ± 0.5 0.4 ± 0.2 84.9 ± 4.2 0.8 ± 2.2 13.9 ± 4.7 0.4 ± 1.0
Last 86.0 ± 0.6 3.4 ± 0.3 7.5 ± 0.4 3.0 ± 0.2 86.0 ± 5.6 3.4 ± 2.3 7.5 ± 3.5 3.0 ± 2.0
PG 86.9 ± 0.5 0.3 ± 0.1 12.4 ± 0.5 0.3 ± 0.1 86.9 ± 7.0 0.3 ± 0.5 12.5 ± 4.1 0.3 ± 0.4
P G2 87.2 ± 0.7 0.3 ± 0.1 12.2 ± 0.6 0.3 ± 0.1 87.0 ± 7.0 0.3 ± 0.5 12.3 ± 4.1 0.4 ± 0.4
P G2com 87.5 ± 0.9 0.3 ± 0.1 11.9 ± 0.6 0.3 ± 0.1 87.5 ± 8.9 0.4 ± 0.5 11.7 ± 3.8 0.4 ± 0.5
P GOS 87.5 ± 0.7 0.1 ± 0.1 12.0 ± 0.6 0.4 ± 0.1 87.3 ± 6.5 0.1 ± 0.2 12.2 ± 3.9 0.4 ± 0.3
Paciente 588
Avg 94.4 ± 0.7 0.2 ± 0.0 5.4 ± 0.5 0.0 ± 0.0 94.4 ± 6.6 0.3 ± 0.5 5.2 ± 4.3 0.0 ± 0.1
Last 95.8 ± 0.6 1.4 ± 0.1 2.3 ± 0.2 0.5 ± 0.1 95.8 ± 5.9 1.4 ± 1.0 2.3 ± 1.6 0.5 ± 0.8
PG 95.6 ± 2.9 0.2 ± 0.1 4.0 ± 1.5 0.1 ± 0.1 95.8 ± 8.0 0.2 ± 0.3 3.9 ± 2.4 0.1 ± 0.3
P G2 96.1 ± 0.8 0.2 ± 0.1 3.5 ± 0.3 0.1 ± 0.0 96.1 ± 7.4 0.2 ± 0.3 3.5 ± 2.1 0.1 ± 0.3
P G2com 96.3 ± 0.9 0.2 ± 0.1 3.4 ± 0.3 0.1 ± 0.0 96.1 ± 7.6 0.3 ± 0.3 3.5 ± 2.2 0.1 ± 0.2
P GOS 95.3 ± 3.6 0.2 ± 0.1 4.4 ± 1.9 0.1 ± 0.1 95.4 ± 8.6 0.3 ± 0.4 4.3 ± 4.0 0.0 ± 0.1
Paciente 591
Avg 88.6 ± 1.1 0.2 ± 0.1 10.6 ± 0.7 0.6 ± 0.1 88.0 ± 6.6 0.3 ± 0.4 11.3 ± 6.1 0.5 ± 0.7
Last 90.4 ± 0.2 2.8 ± 0.2 5.4 ± 0.2 1.5 ± 0.1 90.4 ± 2.5 2.8 ± 2.0 5.4 ± 1.7 1.5 ± 0.9
PG 90.7 ± 0.7 0.4 ± 0.1 8.6 ± 0.9 0.3 ± 0.1 90.3 ± 6.1 0.4 ± 0.4 9.0 ± 3.8 0.3 ± 0.5
P G2 91.1 ± 0.5 0.4 ± 0.1 8.1 ± 0.3 0.4 ± 0.1 90.9 ± 5.9 0.5 ± 0.5 8.2 ± 2.9 0.4 ± 0.5
P G2com 91.2 ± 1.3 0.5 ± 0.1 7.9 ± 1.0 0.3 ± 0.1 91.4 ± 5.0 0.5 ± 0.6 7.8 ± 2.7 0.4 ± 0.5
P GOS 91.5 ± 0.6 0.5 ± 0.1 7.6 ± 0.3 0.5 ± 0.1 91.4 ± 5.9 0.4 ± 0.4 7.7 ± 2.9 0.5 ± 0.5

704
XIII Congreso Español en Metaheurı́sticas y Algoritmos Evolutivos y Bioinspirados

Tabla VI: Predicciones (en porcentaje) obtenidas para las distintas zonas con Parkes Error Grid para las medias y
desviaciones tı́picas de los valores obtenidos con validación cruzada de cada paciente para los distintos modelos
con horizonte de tiempo a 2 horas.
t+120 train t+120 test
Modelo A+B C D E A+B C D E
Paciente 559
Avg 81.5 ± 0.7 15.8 ± 0.5 2.7 ± 0.3 0.0 ± 0.0 80.8 ± 7.3 14.9 ± 4.0 4.3 ± 5.4 0.0 ± 0.0
Last 84.8 ± 0.7 13.1 ± 0.4 2.1 ± 0.1 0.0 ± 0.0 84.8 ± 6.5 13.1 ± 3.3 2.1 ± 1.0 0.0 ± 0.0
PG 86.1 ± 1.5 12.2 ± 1.6 1.7 ± 0.2 0.0 ± 0.0 85.8 ± 6.4 12.4 ± 2.3 1.7 ± 1.7 0.0 ± 0.0
P G2 86.6 ± 0.7 11.7 ± 0.4 1.7 ± 0.2 0.0 ± 0.0 86.5 ± 4.8 11.8 ± 2.4 1.8 ± 1.7 0.0 ± 0.0
P G2com 87.9 ± 0.6 10.8 ± 0.4 1.4 ± 0.1 0.0 ± 0.0 87.8 ± 4.4 10.7 ± 2.1 1.5 ± 1.4 0.0 ± 0.0
P GOS 86.7 ± 0.6 11.6 ± 0.4 1.7 ± 0.2 0.0 ± 0.0 86.3 ± 4.9 11.8 ± 2.3 1.8 ± 1.6 0.0 ± 0.0
Paciente 563
Avg 90.7 ± 0.9 8.8 ± 0.6 0.5 ± 0.1 0.0 ± 0.0 89.0 ± 5.9 10.1 ± 6.6 0.9 ± 1.4 0.0 ± 0.0
Last 92.0 ± 0.3 7.1 ± 0.3 0.8 ± 0.1 0.0 ± 0.0 92.0 ± 2.4 7.1 ± 2.5 0.8 ± 0.7 0.0 ± 0.0
PG 92.4 ± 2.6 7.1 ± 0.7 0.5 ± 0.1 0.0 ± 0.0 91.8 ± 6.1 7.6 ± 4.2 0.5 ± 0.6 0.0 ± 0.0
P G2 92.4 ± 3.2 7.2 ± 1.1 0.4 ± 0.1 0.0 ± 0.0 92.1 ± 8.1 7.4 ± 4.4 0.5 ± 0.8 0.0 ± 0.0
P G2com 93.6 ± 0.6 6.0 ± 0.4 0.4 ± 0.1 0.0 ± 0.0 93.2 ± 7.2 6.3 ± 3.9 0.4 ± 0.6 0.0 ± 0.0
P GOS 93.7 ± 11.6 5.9 ± 2.0 0.3 ± 0.1 0.0 ± 0.0 93.3 ± 13.7 6.3 ± 4.5 0.4 ± 0.5 0.0 ± 0.0
Paciente 570
Avg 89.8 ± 1.7 8.7 ± 0.7 1.5 ± 0.2 0.0 ± 0.0 91.1 ± 15.0 8.0 ± 4.6 1.0 ± 1.1 0.0 ± 0.0
Last 94.9 ± 0.9 4.6 ± 0.3 0.5 ± 0.1 0.0 ± 0.0 94.9 ± 7.8 4.6 ± 2.4 0.5 ± 0.6 0.0 ± 0.0
PG 93.9 ± 2.3 5.4 ± 0.6 0.6 ± 0.4 0.0 ± 0.0 94.1 ± 10.3 5.4 ± 3.4 0.5 ± 0.6 0.0 ± 0.0
P G2 94.3 ± 1.1 5.3 ± 0.4 0.5 ± 0.1 0.0 ± 0.0 94.0 ± 9.4 5.5 ± 3.8 0.5 ± 0.6 0.0 ± 0.0
P G2com 94.6 ± 1.6 4.9 ± 0.7 0.6 ± 0.3 0.0 ± 0.0 94.4 ± 9.1 5.1 ± 3.9 0.5 ± 0.6 0.0 ± 0.0
P GOS 94.3 ± 1.1 5.1 ± 0.4 0.5 ± 0.1 0.0 ± 0.0 93.9 ± 9.0 5.6 ± 3.8 0.5 ± 0.6 0.0 ± 0.0
Paciente 575
Avg 83.9 ± 0.6 13.4 ± 0.5 2.7 ± 0.2 0.0 ± 0.0 82.5 ± 5.8 15.1 ± 3.4 2.4 ± 1.3 0.0 ± 0.0
Last 83.2 ± 0.5 14.4 ± 0.7 2.3 ± 0.1 0.0 ± 0.0 83.2 ± 4.7 14.4 ± 6.1 2.3 ± 1.1 0.0 ± 0.0
PG 84.6 ± 0.4 13.4 ± 0.6 1.9 ± 0.2 0.0 ± 0.0 84.4 ± 6.1 13.7 ± 6.0 1.9 ± 0.8 0.0 ± 0.0
P G2 84.7 ± 0.6 13.5 ± 0.6 1.8 ± 0.2 0.0 ± 0.0 84.5 ± 6.2 13.6 ± 6.2 1.9 ± 0.9 0.0 ± 0.0
P G2com 86.7 ± 1.2 11.9 ± 0.4 1.4 ± 0.1 0.0 ± 0.0 86.4 ± 7.7 12.2 ± 6.0 1.5 ± 1.0 0.0 ± 0.0
P GOS 84.7 ± 0.6 13.5 ± 0.7 1.8 ± 0.1 0.0 ± 0.0 84.4 ± 5.9 13.8 ± 6.1 1.8 ± 0.9 0.0 ± 0.0
Paciente 588
Avg 94.6 ± 0.8 5.1 ± 0.4 0.3 ± 0.1 0.0 ± 0.0 95.0 ± 7.0 4.7 ± 3.3 0.4 ± 0.6 0.0 ± 0.0
Last 94.3 ± 0.7 5.1 ± 0.3 0.6 ± 0.1 0.0 ± 0.0 94.3 ± 6.9 5.1 ± 2.6 0.6 ± 0.8 0.0 ± 0.0
PG 94.9 ± 3.8 4.7 ± 0.5 0.4 ± 0.1 0.0 ± 0.0 94.7 ± 7.4 4.8 ± 3.2 0.4 ± 0.7 0.0 ± 0.0
P G2 95.1 ± 0.8 4.5 ± 0.3 0.4 ± 0.1 0.0 ± 0.0 94.9 ± 7.0 4.6 ± 3.2 0.5 ± 0.8 0.0 ± 0.0
P G2com 95.3 ± 0.8 4.4 ± 0.3 0.4 ± 0.1 0.0 ± 0.0 95.0 ± 7.1 4.6 ± 3.4 0.4 ± 0.7 0.0 ± 0.0
P GOS 94.9 ± 5.0 4.5 ± 0.4 0.5 ± 0.1 0.0 ± 0.0 94.3 ± 8.0 5.2 ± 3.9 0.5 ± 0.9 0.0 ± 0.0
Paciente 591
Avg 87.0 ± 1.0 11.2 ± 0.3 1.8 ± 0.2 0.0 ± 0.0 87.3 ± 6.4 10.8 ± 3.8 1.8 ± 2.2 0.0 ± 0.0
Last 89.8 ± 0.3 8.6 ± 0.3 1.6 ± 0.1 0.0 ± 0.0 89.8 ± 2.8 8.6 ± 2.9 1.6 ± 1.0 0.0 ± 0.0
PG 90.2 ± 1.0 8.2 ± 0.6 1.6 ± 0.2 0.0 ± 0.0 90.2 ± 5.8 8.2 ± 3.4 1.7 ± 1.8 0.0 ± 0.0
P G2 90.6 ± 0.5 7.7 ± 0.3 1.6 ± 0.2 0.0 ± 0.0 90.4 ± 6.0 8.0 ± 3.0 1.7 ± 1.8 0.0 ± 0.0
P G2com 90.2 ± 1.6 8.4 ± 0.7 1.4 ± 0.2 0.0 ± 0.0 89.9 ± 5.2 8.6 ± 3.5 1.5 ± 1.5 0.0 ± 0.0
P GOS 90.8 ± 0.6 7.7 ± 0.3 1.5 ± 0.2 0.0 ± 0.0 90.5 ± 6.4 7.7 ± 2.7 1.7 ± 1.7 0.0 ± 0.0

705
XVIII Conferencia de la Asociación Española para la Inteligencia Artificial

Registrado de Imagen Médica mediante Algoritmos


de Optimización basados en Arrecifes de Coral
E. Bermejo∗ , M. Chica† , S. Damas∗ , S. Salcedo-Sanz‡ and O. Cordón∗§
∗ Instituto Andaluz en Data Science and Computational Intelligence (DaSCI), Universidad de Granada, Granada 18071.
Email: ebermejo@decsai.ugr.es,sdamas@ugr.es
† School of Electrical Engineering and Computing, The University of Newcastle, Callaghan 2380, Australia.

Email: manuel.chicaserrano@newcastle.edu.au
‡ Departamento de Teorı́a de la Señal y Comunicaciones, Universidad de Alcalá, Alcalá de Henares 28805.

Email: sancho.salcedo@uah.es
§ Centro de Investigación en Tecnologı́as de la Información, Universidad de Granada, Granada 18071

Email: ocordon@decsai.ugr.es

Resumen—El Registrado de Imágenes (RI) conlleva la trans- de extracción de caracterı́sticas, una etapa propensa a errores
formación de un conjunto de imágenes en un sistema de coorde- si la información extraı́da no es suficientemente representativa.
nadas común. Generalmente, la búsqueda de la correspondencia Por otro lado, los enfoques de intensidades permiten procesar
óptima entre imágenes es considerada un problema de optimiza-
ción. Los enfoques basados en metaheurı́sticas permiten resolver un volumen de datos mayor, a costa de incrementar los
el problema de RI superando las numerosas limitaciones de los requisitos computacionales [2]. Ası́, la alineación se guı́a por
métodos tradicionales. En esta contribución consideraremos un la distribución de intensidades (niveles de gris) de la imagen,
reciente método bio-inspirado: Optimización por Arrecifes de aumentando la precisión de estos métodos, pero también su
Coral (CRO). Este novedoso algoritmo simula los fenómenos sensibilidad al ruido o a las condiciones de iluminación.
naturales que subyacen a un arrecife de coral. Adaptaremos el
algoritmo siguiendo dos enfoques de registrado diferentes: basado Métodos tradicionales, como Iterative Closest Point (ICP)
en caracterı́sticas y basado en intensidades. Además, diseñaremos [3] tienden a quedar atrapados en mı́nimos locales debido a
un exhaustivo estudio experimental considerando un problema de factores como el ruido, la discretización o la desalineación
RI médica con resonancias magnéticas cerebrales. Los resultados entre imágenes. Mientras tanto, aquellos basados en algoritmos
muestran cómo CRO supera al estado del arte en RI tanto en evolutivos u otras metaheurı́sticas (MHs) permiten superar
robustez como en precisión y eficiencia siguiendo ambos enfoques.
estas desventajas y ofrecen un buen rendimiento que los hace
idóneos para problemas de RI médica.
I. I NTRODUCCI ÓN Hasta la fecha se han propuesto numerosos estudios com-
En el ámbito de la imagen médica existe un gran interés en parativos para analizar el rendimiento de diferentes MHs en
relacionar la información procedente de diferentes imágenes. problemas de RI empleando modelos craneales e imágenes
Esta tarea es relevante en un gran número de aplicaciones: médicas en 3D [4], [5]. En ambos estudios se incluyen
diagnóstico, monitorización y seguimiento de enfermedades o métodos de RI relevantes: ICP, una versión adaptativa de des-
cirugı́a asistida, entre otras. Generalmente, estas aplicaciones censo de gradiente estocástico (ASGD) y algoritmos genéticos
requieren la integración de información visual adquirida por (GAs). Entre las diversas MHs destaca una versión memética
diferentes dispositivos o condiciones. Ası́, el Registrado de del método scatter search (SS) propuesta en [4] y extendida
Imágenes (RI) [1] es considerado como una tarea de prepro- en [6], obteniendo resultados excelentes y consolidando su do-
cesamiento esencial en imagen médica, ya que permite alinear minancia en el estado del arte sobre métodos convencionales.
múltiples imágenes con contenido común. Recientemente se ha propuesto una MH bio-inspirada de-
Generalmente, los métodos de RI consideran una trans- nominada Coral Reefs Optimization (CRO) [7]. CRO es un
formación espacial para alinear imágenes solapando regiones algoritmo evolutivo basado en la simulación de los fenómenos
coincidentes. El problema se trata como un proceso de opti- naturales que ocurren durante la formación de un arrecife de
mización iterativo que explora el espacio de transformaciones coral. A lo largo de su vida, los corales atraviesan diversas
posibles. La calidad de una solución se define ası́ por el grado fases, como la reproducción, el asentamiento de larvas o
de semejanza entre imágenes tras la transformación, que se la lucha por un espacio en el arrecife donde sobrevivir.
mide mediante una métrica de similitud [2]. CRO emula dichos procesos favoreciendo un equilibrio entre
El proceso de RI permite emplear una imagen completa diversidad y especificidad, ingredientes idóneos para abordar
(enfoque de intensidades) o basarse en partes distintivas de problemas complejos de optimización.
la imagen (caracterı́sticas). Los enfoques de caracterı́sticas [1] Dados los buenos resultados de CRO en diferentes pro-
agilizan el proceso de optimización reduciendo la complejidad blemáticas reales, consideramos que su diseño puede com-
del problema, al usar una porción de las imágenes. Sin portarse adecuadamente en problemas de RI complejos. Ası́,
embargo, estos métodos dependen en gran medida del proceso en este trabajo diseñamos un nuevo método de RI basado en

706
XIII Congreso Español en Metaheurı́sticas y Algoritmos Evolutivos y Bioinspirados

CRO donde tanto la función objetivo como la codificación han caracterı́sticas correspondientes. Enfoques de intensidades se
sido adaptados a un problema concreto de RI médica. basan en la relación entre distribuciones de intensidad para
Para validar nuestra propuesta, hemos desarrollado un ex- evaluar la similitud. Existen multitud de métricas disponibles
haustivo estudio experimental comparando CRO contra algu- (correlación normalizada (CN) o información mutua (IM),
nos métodos evolutivos del estado del arte en RI, considerando entre otras) y su idoneidad viene determinada por el proceso
tanto enfoques de intensidades como de caracterı́sticas. Esta de adquisición y la relación entre imágenes.
comparativa es una extensión de nuestra propuesta donde Por último, el optimizador refina la solución hasta alcanzar
adaptamos CRO al enfoque de intensidades [8]. Se han utili- un criterio de parada (cuando se encuentra una solución
zado pares de imágenes monomodales extraı́das de Brainweb, adecuada o se realiza un número determinado de iteraciones).
dataset disponible gracias a McGill University [9]. Ası́, la optimización de la transformación espacial supone un
proceso de búsqueda iterativo sobre el espacio de transfor-
II. R EGISTRADO DE I M ÁGENES : P LANTEAMIENTO maciones geométricas. De acuerdo con las caracterı́sticas del
Generalmente, en los problemas de RI médica se parte espacio de búsqueda, podemos encontrar dos estrategias dife-
de dos imágenes, una de referencia o modelo (IM ), y una rentes. El registrado puede considerarse como un problema de
imagen móvil o escena (IE ) que se alinea con la geometrı́a optimización continua cuando la búsqueda se realiza en base
del modelo. El objetivo del proceso de registrado es encontrar a los parámetros de la transformación. Alternativamente, la
una transformación geométrica T que haga el modelo IM y la búsqueda se puede realizar en el espacio de correspondencias
escena transformada T (IE ) sean lo más similares posible. El entre pares de caracterı́sticas (enfoque de caracterı́sticas) o
grado de semejanza entre imágenes se mide considerando una entre áreas de la imagen (enfoque de intensidades).
métrica de similitud. Ası́, el RI se formula como un problema
de maximización en el espacio de transformaciones: A. Algoritmos evolutivos relevantes en RI médica
RI basado en intensidades
argmax Similitud (IM , T (IE )).
T ∈ Transformaciones r-GA∗ , Valsecchi et al.: r-GA∗ se basa en un algoritmo
genético [10]. El optimizador está diseñado en codificación
El proceso iterativo de un método de RI consta de tres
real donde una solución almacena los parámetros de la trans-
componentes principales: el modelo de transformación, la
formación en un vector. Los operadores genéticos también
métrica de similitud, y el optimizador. En primer lugar,
son reales: cruce por mezcla alfa (BLX-α) [11] y mutación
el optimizador estima una transformación geométrica para
aleatoria. r-GA∗ es capaz de adaptar diferentes métricas de
alinear las imágenes, que viene determinada por el modelo
similitud y distintos modelos de transformación. Además,
de transformación. La Figura 1 ilustra el efecto de aplicar
integra el uso de múltiples resoluciones en combinación con
diferentes tipos de transformación a una resonancia magnética
un mecanismo de reinicio y adaptación al espacio de búsqueda.
(IRM) cerebral. La elección del modelo adecuado depende
Estos mecanismos permiten agilizar el proceso de optimiza-
tanto de la aplicación concreta como de la naturaleza de las
ción y mitigar una convergencia prematura.
imágenes. En ciertos contextos un modelo más simple (trans-
formación de traslación) puede ser adecuado, mientras que SS∗ , Valsecchi et al.: SS∗ [6] es una variante del diseño
otras aplicaciones que suponen una estimación de movimiento original de scatter search o búsqueda dispersa, donde el
requieren modelos deformables. De cualquier forma, el tipo de conjunto de referencia se divide en dos para contener las
transformación debe ser seleccionado cuidadosamente, ya que soluciones más diversas y las de mayor calidad. El algoritmo
de esta elección dependen tanto los requisitos computacionales han sido diseñados especı́ficamente para RI [4]. Ası́, SS∗
en base al número de parámetros a estimar, como los efectos considera el uso de memoria basada en frecuencia para el
geométricos resultantes de la transformación. método de diversificación, la combinación de soluciones se
basa en el cruce BLX-α, y el método de mejora en el
operador PMX-α [12]. El método de actualización clasifica
las soluciones según su calidad o diversidad. Finalmente, el
método de control de duplicación previene la aparición de
copias idénticas de una solución en la población.

Figura 1: Aplicación de diferentes modelos de transformación: RI basado en caracterı́sticas


similitud, finidad y b-spline, sobre una escena inicial. HE-GA, He y Narayana: Propuesto en [13], considera
un diseño genético con codificación real combinado con
Tras ello, la métrica de similitud mide la calidad de la dividing rectangle, un método de optimización global basado
alineación entre la escena transformada y el modelo. La en ramificación y poda. El genético sigue un modelo gene-
elección de esta métrica es un paso crucial en el diseño de racional elitista con cruce aritmético y mutación uniforme,
cualquier método de RI y depende del enfoque considerado. aplicado para estimar una solución preliminar. Esta solución
Enfoques de caracterı́sticas suelen considerar el error cuadráti- es posteriormente refinada por búsqueda local. Incorpora un
co medio (ECM) como métrica para medir la distancia entre mecanismo de reinicio para evitar una convergencia prematura.

707
XVIII Conferencia de la Asociación Española para la Inteligencia Artificial

SS, Santamarı́a et al.: Este método basado en SS fue IV. D ISE ÑO E XPERIMENTAL
originalmente diseñado para problemas de RI de rango [4]. Los Diseñamos un estudio experimental considerando los algo-
autores adoptan una métrica de similitud basada en el error ritmos descritos en la Sección A ya que mejoran el comporta-
cuadrático mediano (ECMed), robusta a imágenes con bajo miento de alternativas clásicas [5], [6], [8], [10]. Ası́, preten-
solapamiento, integran una estructura de datos para acelerar demos realizar un análisis exhaustivo del comportamiento de
el cálculo de la función objetivo, y una búsqueda local basada nuestra propuesta en comparación con los métodos evolutivos
en cruce (XLS) como método de mejora. SS también incluye más relevantes en un problema de RI médica.
un mecanismo de reinicio para evitar mı́nimos locales.
A. Escenarios y dataset de imágenes
III. C ORAL R EEFS O PTIMIZATION A LGORITHM
Las imágenes mono-modales utilizadas en esta experimen-
CRO [7], [14] es un algoritmo evolutivo basado en los pro- tación han sido obtenidas de un repositorio público muy
cesos naturales de un arrecife de coral. Denominamos R a un conocido, BrainWeb (McGill University [9]). Este dataset se
arrecife representado por una cuadrı́cula R1 × R2 , donde cada compone de imágenes cerebrales simuladas a partir de IRMs
posición (i, j) permite albergar a un coral, Ci,j , que representa sintéticas. Con el objetivo de considerar diferentes niveles de
una solución al problema de optimización considerado. El complejidad, las imágenes contienen ruido (hasta un 5 %) y
algoritmo inicializa varios corales en posiciones aleatorias de múltiples lesiones (esclerosis). Las imágenes tienen un tamaño
R, dejando huecos libres para el asentamiento de futuras gene- común de 60 × 181 × 217 voxels.
raciones de corales. La ratio entre posiciones libres/ocupadas A partir de la curvatura cerebral de cada imagen extraemos
viene dado por un parámetro ρ0 , donde 0 < ρ0 < 1. un conjunto de puntos mediante un detector de lı́neas de cresta
Existen diferentes mecanismos reproductivos en un arrecife [15]. En enfoques de caracterı́sticas, los valores heurı́sticos
de coral. En CRO se recrean aplicando diferentes operadores de curvatura se emplean para guiar al optimizador durante la
de forma secuencial durante la segunda fase del algoritmo: estimación de la transformación de registrado.
1. Reproducción sexual externa (Broadcast Spawning). Para generar diferentes escenarios, cada imagen ha sido
En cada iteración k del algoritmo se aplica: transformada usando una de las cuatro transformaciones de
1.a. Selección uniforme de una fracción aleatoria Fb similitud (aplicando rotación, traslación y escalado uniforme)
de corales (denominados broadcast spawners) con de la Tabla I. En total, el estudio consta de 16 instancias
respecto al total de corales existentes en el arrecife. de RI creadas a partir de pares de imágenes con diferentes
1.b. Formación de larvas. Se eligen dos broadcast spaw- transformaciones. Los escenarios son: I1 vs. Ti (I2 ), I1 vs.
ners y se aplica un operador de cruce. Una vez Ti (I3 ), I1 vs. Ti (I4 ), e I2 vs. Ti (I4 ), para i = 1, 2, 3, 4.
seleccionados, éstos no vuelven a atravesar otra Tabla I: Parámetros de la transformación: ángulo de rota-
etapa reproductiva durante la iteración k. La selec- ción (λ), eje de rotación (ax , ay , az ), vector de traslación
ción puede ser uniforme, aleatoria o proporcional (tx , ty , tz ), y factor de escalado uniforme s.
al fitness (selección por ruleta).
2. Reproducción sexual interna (Brooding). La repro- λ ax ay az tx ty tz s

ducción de los corales hermafroditas se modela como T1 115 -0.863 0.259 0.431 -26 15.5 -4.6 1
T2 168 0.676 -0.290 0.676 6 5.5 -4.6 0.8
una mutación sobre una fracción de los corales restantes T3 235 -0.303 -0.808 0.505 16 -5.5 -4.6 1
1 − Fb . En estos casos, un porcentaje Pi del coral muta. T4 276.9 -0.872 0.436 -0.218 -12 5.5 -24.6 1.2
3. Asentamiento de larvas. Las nuevas larvas generadas
seleccionan una posición aleatoria del arrecife para
formarse, siempre que la posición (i, j) esté libre. En B. Diseño Experimental y Configuración
caso de que esté ocupada, la nueva larva se asentará si Los métodos de la comparativa difieren en el proceso de
su valor de fitness mejora a la del coral existente. El optimización: los enfoques de caracterı́sticas se guı́an por los
máximo número de intentos para ocupar una posición en puntos de curvatura y las métricas ECM o ECMed, mientras
cada iteración k está limitado por el parámetro η = 3. que los enfoques de intensidades se guı́an por los valores de
4. Reproducción asexual. Los corales pueden fragmentar- intensidad y métricas como CN o IM. Los resultados de dife-
se y reasentarse en el arrecife (budding). CRO modela rentes métricas no son comparables, por lo que es necesario
este mecanismo ordenando los corales por su nivel de definir un marco comparativo para evaluar objetivamente los
vida (fitness f (Cij )). Una pequeña fracción (Fa ) de los resultados de la alineación. Ası́, consideramos una medida
corales se duplica, muta con probabilidad Pa , e intenta común para evaluar la calidad de todas las soluciones. Una
asentarse en el arrecife como en el paso 3. vez el algoritmo alcanza una solución, se calcula el ECM entre
5. Depredación. Tras cada iteración k, se simula la muerte las caracterı́sticas anatómicas (lı́neas de cresta) de la escena
de un pequeño número de corales, liberando espacio en transformada y las del modelo. Este valor será usado como
el arrecife para la siguiente generación. La depredación comparativa de la calidad final para todos los métodos.
se aplica con una probabilidad muy pequeña (Pd ) a una La transformación de similitud que relaciona las imágenes
fracción Fd de corales con peor vida. considera un rango de [−30, 30] para los parámetros de la

708
XIII Congreso Español en Metaheurı́sticas y Algoritmos Evolutivos y Bioinspirados
Tabla II: Parameter configuration for considered IR methods.
r-GA∗ SS∗ CRO∗ HE-GA SS CRO
Individuos 100 Tamaño población 12 Tamaño arrecife 80 Individuos 60 Tamaño población 30 Tamaño arrecife 70
Generaciones 75 Generaciones 18 Generaciones 65 Reinicios 5 Reinicios 5 Reinicios 15
Reinicios 5 Reinicios 3 Reinicios 8 Factor α 0.3 XLS iter. 100 XLS iter. 100
Torneo 3 PMX iter. 12 PMX iter. 15 Prob. cruce 0.7 Factor α 0.3 ρ0 0.6
Factor α 0.3 Factor α 0.3 ρ0 0.6 Prob. mutación 0.2 Conjunto Referencia 8 Fbroad 0.9
Prob. cruce 0.5 conjunto referencia 4 Fbroad 0.8 Pd 0.05
Prob. mutación 0.1 Pd 0.15 k 3

traslación y [0,75, 1,25] para el factor de escalado. No se aplica un reinicio del algoritmo un número determinado de
aplica restricción en el ángulo de rotación ([0, 360]), ni en sus veces. La mejor solución de esta etapa pasa a la etapa de refi-
ejes ([−1, 1]). De esta forma, la transformación se codifica nado. Dado el gran volumen de datos, el tiempo de ejecución
mediante un vector real de siete parámetros en el enfoque total de cada algoritmo se ha limitado a 180 segundos.
de intensidades: versor de rotación (θx , θy , θz ), vector de Diseño de métodos basados en caracterı́sticas:: Implemen-
traslación (tx , ty , tz ) y escalado uniforme s. En el enfoque de tados en C++ y compilados con la herramienta GNU/g++,
caracterı́sticas, la rotación se codifica con cuatro parámetros: siguen una estructura similar al enfoque de intensidades.
tres para el eje de rotación (rx , ry , rz ) y uno para el ángulo Puesto que ECM ha sido elegido para la comparativa final,
θr , resultando en una codificación de ocho parámetros. consideramos una métrica de optimización diferente para
Para evaluar CRO en comparación con el estado del ar- evitar favorecer este diseño. Ası́, consideramos una variante
te en RI (Sección A), diseñamos un estudio experimental de ECMed especı́ficamente diseñada para IR:
considerando métodos representativos de ambos enfoques (in-
F (f, IE , IM ) =
tensidades y caracterı́sticas). Ası́, comparamos seis métodos
X
N
diferentes: i) Enfoque de intensidades: r-GA∗ , SS∗ y CRO∗ . w1 ·(1/(1+ pi + t~i )− p~j ‘ ||))+w2 ·(1/(1+|pec −pm )),
||(sR~
ii) Enfoque de caracterı́sticas: HE-GA, SS y CRO. i=1
Dadas las diferencias en términos de requisitos compu- donde f es la solución que codifica los parámetros de la
tacionales, la configuración de parámetros óptima para cada transformación; pi es un punto 3D de la escena y pj su corres-
algoritmo varı́a según el enfoque considerado (ver Tabla II). pondencia más cercana en el modelo utilizando una estructura
Estos parámetros han sido ajustados manualmente con un par de indexación (grid closest point); w1 y w2 (w1 +w2 =1) son
de imágenes no incluido en la experimentación para evitar pesos para balancear los términos de la función; pec es el radio
sesgos. Se han seguido las directrices marcadas por los autores de la esfera que engloba la escena transformada y pm el radio
en estudios previos [5], [7]. A continuación detallamos las de la esfera sobre el modelo. Nótese que el primer término de
caracterı́sticas distintivas de los métodos: F corresponde con la función ECMed entre puntos vecinos.
Diseño de metodos basados en intensidades:: La imple- Como componentes especı́ficos de este enfoque, se aplica
mentación se ha realizado en Elastix [16], una herramienta el reinicio de la población cuando el optimizador detecta
open-source especı́ficamente diseñada para RI médica de in- estancamiento, por ejemplo, tras 15 iteraciones sin mejora.
tensidades. El método basado en CRO se ha propuesto en [8] El conjunto de caracterı́sticas (lı́neas de cresta) es bastante
con resultados prometedores. El optimizador se guı́a por la reducido, por lo que no se requiere una estrategia multi-
métrica normalizada de información mutua (IMN): resolución y el tiempo de parada se limita a 20 segundos.
P P
b∈IB pAB (a, b) log(pA (a)pB (b))
NMI(IA , IB ) = P a∈IA
P , C. Análisis de Resultados
a∈IA b∈IB pAB (a, b) log pAB (a, b)
En la Tabla III se recogen los resultados de la alineación
donde pAB es la probabilidad conjunta y pA , pB son las entre imágenes: el error entre pares de caracterı́sticas (ECM)
probabilidades marginales discretas de las intensidades de las y el ranking parcial de cada método en los 16 escenarios.
imágenes. Nótese que el mı́nimo valor posible de ECM se explica por los
Además, el diseño de los enfoques de intensidades integra niveles de ruido y la presencia de lesiones en la comparación
dos componentes: i) Multi-resolución para reducir el coste entre imágenes. El valor óptimo de ECM se ha resaltado entre
computacional del proceso, mediante una reducción de la paréntesis en la Tabla III. Además, se ha realizado un análisis
resolución y un suavizado gaussiano para crear dos represen- estadı́stico sobre los valores medios para buscar diferencias
taciones (pirámides) de la imagen. En la primera resolución, significativas entre el algoritmo con mejor ranking y el resto.
el optimizador considera una pirámide de baja resolución para Los resultados del ranking, test de Bonferroni-Dunn y test de
aproximar la transformación. La segunda resolución consiste Holm se recogen en la Tabla IV.
en una etapa de refinado para mejorar la calidad de la En general, los métodos basados en caracterı́sticas mejoran
alineación. ii) Mecanismo de reinicio para asegurar que el a sus homólogos de intensidades en la mayorı́a instancias.
algoritmo es capaz de recuperarse de un posible estancamiento El diseño del optimizador hace que este tipo de métodos
y encuentre una buena solución. En la primera resolución, se pueda alcanzar una mayor precisión en menor tiempo. Ası́,

709
XVIII Conferencia de la Asociación Española para la Inteligencia Artificial
Tabla III: Mı́nimo (m), media (µ) y desviación estándar (sd) para los valores de ECM (mm) y ranking medio (R) para cada
instancia de RI. Las columnas subrayadas corresponden con los métodos basados en intensidades.
I1 vs T1 (I2 ) [31] I1 vs T2 (I2 ) [31] I1 vs T3 (I2 ) [31] I1 vs T4 (I2 ) [31]

Algorithm m µ sd R m µ sd R m µ sd R m µ sd R

r-GA∗ 37.32 134 >99 6 39.60 86.43 44 5 43.29 5506 >99 6 32.19 84.36 91 6
HE-GA 42.69 101 47 5 31.85 44.27 17 4 31.96 42.19 9 4 32.88 59.23 28 5
SS∗ 36.01 38.14 5.9 4 36.53 38.96 2.9 3 36.78 1755 >99 5 32.65 32.96 0.7 4
SS 32.06 32.84 2.2 2 32.11 119 >99 6 32.17 41.08 47 2 32.00 32.25 0.1 2
CRO∗ 36.35 36.79 0.3 3 36.26 36.78 0.3 2 40.72 41.41 0.5 3 32.67 32.79 0.1 3
CRO 32.11 32.25 0.1 1 32.10 33.96 5.3 1 32.14 32.27 0.1 1 32.14 32.24 0.0 1

I1 vs T1 (I3 ) [42] I1 vs T2 (I3 ) [42] I1 vs T3 (I3 ) [42] I1 vs T4 (I3 ) [42]

m µ sd R m µ sd R m µ sd R m µ sd R

r-GA∗ 50.61 142 >99 6 45.61 97.75 81 6 66.00 8470 >99 6 42.93 86.11 53 5
HE-GA 61.65 122 48 5 42.91 61.01 24 4 56.52 74.44 18 5 58.74 114 42 6
SS∗ 50.20 61.34 50 4 43.65 46.36 3.9 3 55.22 57.85 3.2 4 44.68 45.18 0.3 4
SS 42.96 58.69 59 3 43.08 83.82 >99 5 43.06 50.95 41 2 42.95 43.44 0.6 2
CRO∗ 51.23 51.77 0.3 2 43.54 43.73 0.1 1 55.78 56.53 0.4 3 44.61 45.17 0.3 3
CRO 43.01 43.29 0.2 1 42.94 44.06 2.9 2 42.97 43.45 0.2 1 42.87 43.39 0.3 1

I1 vs T1 (I4 ) [46] I1 vs T2 (I4 ) [46] I1 vs T3 (I4 ) [46] I1 vs T4 (I4 ) [46]

m µ sd R m µ sd R m µ sd R m µ sd R

r-GA∗ 51.06 151 >99 6 58.92 124 98 4 60.76 9428.7 >99 6 46.44 82.74 45 5
HE-GA 60.07 119 51 5 843 1011 >99 6 51.18 78.92 25 5 51.35 92.56 30 6
SS∗ 52.53 53.67 1.3 3 46.48 48.12 1.5 2 54.32 60.10 5.2 3 46.65 47.58 0.5 3
SS 46.79 61.77 77 4 46.52 154 >99 5 46.87 64.26 68 4 46.67 47.33 0.5 1
CRO∗ 52.78 53.24 0.3 2 46.02 46.37 0.1 1 57.46 58.02 0.3 2 47.03 47.70 0.3 4
CRO 46.66 48.85 6.0 1 46.77 48.80 3.4 3 46.80 47.57 0.6 1 46.64 47.37 0.6 2

I2 vs T1 (I4 ) [28] I2 vs T2 (I4 ) [28] I2 vs T3 (I4 ) [28] I2 vs T4 (I4 ) [28]

m µ sd R m µ sd R m µ sd R m µ sd R

r-GA∗ 32.15 3293 >99 6 32.20 68.26 33 6 33.38 3656 >99 6 29.53 57.89 32 5
HE-GA 33.59 94.40 35 5 29.94 46.64 41 5 29.88 37.67 14 3 31.34 78.25 33 6
SS∗ 34.80 35.66 0.5 3 30.36 33.07 3.7 3 38.85 43.70 9.6 5 28.44 29.69 0.5 4
SS 28.54 44.21 79 4 28.61 35.27 35 4 28.46 28.80 0.1 1 28.57 28.75 0.1 1
CRO∗ 35.06 35.54 0.2 2 30.25 30.47 0.1 2 39.11 40.66 0.5 4 29.36 29.64 0.1 3
CRO 28.32 28.79 0.3 1 28.61 29.01 0.6 1 28.57 28.82 0.1 2 28.59 28.76 0.1 2

el enfoque de caracterı́sticas permite a los métodos obtener Al aplicar el test estadı́stico de Friedman obtenemos un
mejores resultados mı́nimos, a expensas de incrementar la resultado de χ2F = 92,0, con un p-valor correspondiente de
varianza. Por otro lado, los resultados de los métodos basados < 10−16 . Dado que p es menor que el nivel de significancia
en intensidades (excepto r-GA∗ ) son más robustos, obteniendo considerado (α = 0,01), el test concluye que hay diferencias
una menor desviación que los métodos de caracterı́sticas. significativas entre métodos. Complementamos el análisis con
Ambos genéticos tienen un comportamiento inestable, pero el test de Holm (Tabla IV) comparando CRO (control) con
alcanzan buenos resultados mı́nimos. r-GA∗ alcanza la última el resto de métodos. El p-valor resultante para ambos tests
posición del ranking (5.63) debido a obtener los mayores erro- revela que existen diferencias significativas entre CRO y tanto
res en la comparativa. A pesar de su pobre comportamiento, los métodos genéticos como aquellos basados en SS.
HE-GA es capaz de obtener el mejor resultado mı́nimo en tres
Tabla IV: Ranking de Friedman y resultados estadı́sticos con
de los dieciséis escenarios, con un ranking de 4.94.
CRO como método de control para los test de Bonferroni y
SS∗ y SS mejoran considerablemente a los genéticos, con Holm, de acuerdo con el valor medio de ECM.
un comportamiento consistente excepto en cuatro escenarios,
donde no terminan de converger. Ası́, los métodos basados en Ranking Bonferroni-Dunn p Holm p
SS alcanzan las posiciones medias del ranking (3.0 y 3.56, CRO 1.38 - -
CRO∗ 2.50 0,44 0,09
respectivamente). Aunque tienen un rendimiento similar en SS 3.00 0,07 < 0,05
cuanto al ECM, SS mejora a SS∗ al obtener mejores resultados SS∗ 3.56 < 0,01 < 0,01
HE-GA 4.94 < 0,01 < 0,01
mı́nimos a pesar de su mayor desviación estándar. r-GA∗ 5.63 < 10−10 < 10−10
En cuanto a nuestras propuestas, CRO∗ obtiene mejor ECM
medio que ambos métodos basados en SS, pero es incapaz de Por último, incluimos un análisis visual de los resultados
alcanzar su precisión en valores mı́nimos. Por otro lado, la obtenidos en uno de los escenarios más complejos. La Figura 2
adaptación al enfoque de caracterı́sticas (CRO) mejora tanto muestra la mejor alineación entre imágenes obtenida por cada
a CRO∗ como al actual método del estado del arte, SS. En algoritmo. Destacamos los resultados de nuestras propuestas
cuanto al ECM medio, CRO mejora a SS en doce escenarios. basadas en CRO, en especial el enfoque de caracterı́sticas, ya
Ası́, CRO∗ alcanza la segunda posición con 2.5, mientras que mejoran considerablemente la precisión de la alineación
que CRO es primero con un ranking de 1.38, gracias a su resultante.
excelente balance entre exploración y explotación. Ambos
enfoques basados en CRO son capaces de mejorar al actual V. C ONCLUSIONES
estado del arte en RI, destacando nuestra propuesta basada en En este trabajo describimos el diseño e implementación de
caracterı́sticas por obtener el mejor rendimiento. una novedosa técnica bio-inspirada, conocida como CRO, para

710
XIII Congreso Español en Metaheurı́sticas y Algoritmos Evolutivos y Bioinspirados

CRO obtiene unos resultados excelentes considerando ambos


enfoques de registrado, y mejora a métodos consolidados en RI
demostrando gran robustez y eficiencia al abordar problemas
de optimización complejos como es el RI médica.
AGRADECIMIENTOS
Este trabajo ha sido financiado parcialmente por los pro-
yectos: TIN2015-67661-P, incluyendo al Fondo Europeo de
Desarrollo Regional (ERDF), al Ministerio de Economı́a y
TIN2014-54583-C2-2-R, de la Comisión Interministerial de
HE-GA (51.2) vs. r-GA∗ (60.8) Ciencia y Tecnologı́a (CICYT).
R EFERENCIAS
[1] B. Zitová and J. Flusser, “Image registration methods: A survey,” Image
and Vision Computing, vol. 21, no. 11, pp. 977–1000, 2003.
[2] A. A. Goshtasby, 2-D and 3-D Image Registration. Wiley Interscience,
2005.
[3] P. J. Besl and N. D. McKay, “A Method for Registration of 3-D Shapes,”
IEEE Trans. on Pattern Analysis and Machine Intelligence, vol. 14,
no. 2, pp. 239–256, 1992.
[4] J. Santamarı́a, O. Cordón, S. Damas, J. Garcı́a-Torres, and A. Quirin,
“Performance evaluation of memetic approaches in 3D reconstruction of
forensic objects,” Soft Computing, vol. 13, no. 8-9, pp. 883–904, 2009.
SS (46.9) vs. SS∗ (54.3) [5] S. Damas, O. Cordón, and J. Santamarı́a, “Medical Image Registra-
tion Using Evolutionary Computation: An Experimental Survey,” IEEE
Computational Intelligence Magazine, vol. 6, no. 4, pp. 26–42, 2011.
[6] A. Valsecchi, S. Damas, J. Santamarı́a, and L. Marrakchi-Kacem,
“Intensity-based image registration using scatter search,” Artificial In-
telligence in Medicine, vol. 60, no. 3, pp. 151–163, 2014.
[7] S. Salcedo-Sanz, J. Del Ser, I. Landa-Torres, S. Gil-López, and J. A.
Portilla-Figueras, “The coral reefs optimization algorithm: A novel me-
taheuristic for efficiently solving optimization problems,” The Scientific
World Journal, vol. 2014, pp. 1–15, 2014.
[8] E. Bermejo, M. Chica, S. Salcedo-Sanz, and O. Cordon, “Coral Reef
Optimization for Intensity-based Medical Image Registration,” in IEEE
Congress on Evolutionary Computation, CEC 2017 - Proceedings.
IEEE, 2017, pp. 533–540.
CRO (46.8) vs. CRO∗ (57.5) [9] D. L. Collins, A. P. Zijdenbos, V. Kollkian, J. G. Sled, N. J. Kabani,
C. J. Holmes, and A. C. Evans, “Design and construction of a realistic
Figura 2: Resultados del solapamiento entre el modelo (azul) digital brain phantom,” IEEE Trans. on Medical Imaging, vol. 17, pp.
463–468, 1998.
y la escena (amarillo). La figura aporta una comparativa de los [10] A. Valsecchi, S. Damas, J. Santamaria, and L. Marrakchi-Kacem,
resultados entre el enfoque de caracterı́sticas (izquierda) y de “Genetic algorithms for Voxel-based medical image registration,” in
intensidades (derecha) para el escenario n◦ 11 (I1 vs. T3 (I4 )). 2013 Fourth International Workshop on Computational Intelligence in
Medical Imaging (CIMI), apr 2013, pp. 22–29.
Entre paréntesis se indica el mı́nimo ECM alcanzado. [11] M. Takahashi and H. Kita, “A crossover operator using indepen-
dent component analysis for real-coded genetic algorithms,” Procee-
dings of the 2001 Congress on Evolutionary Computation (IEEE Cat.
No.01TH8546), vol. 1, pp. 643–649, 2001.
resolver el problema de RI médica en 3D de forma robusta y [12] M. Lozano, F. Herrera, N. Krasnogor, and D. Molina, “Real-coded
memetic algorithms with crossover hill-climbing.” Evolutionary compu-
eficiente. En particular, abordamos el problema considerando tation, vol. 12, no. 3, pp. 273–302, 2004.
dos enfoques, usando la distribución de intensidades de las [13] R. He and P. A. Narayana, “Global optimization of mutual information:
imágenes y un conjunto reducido de puntos caracterı́sticos, application to three-dimensional retrospective registration of magne-
tic resonance images,” Computerized Medical Imaging and Graphics,
cada uno con diferentes niveles de complejidad. CRO integra vol. 26, no. 4, pp. 277–292, 2002.
en su diseño una estrategia de búsqueda balanceada, que le [14] Salcedo-Sanz, “A review on the coral reefs optimization algorithm:
permite obtener resultados excelentes en diferentes problemas new development lines and current applications,” Progress in Artificial
Intelligence, vol. 6, no. 1, pp. 1–15, 2017.
reales. Ası́, adaptamos CRO al problema de RI siguiendo [15] O. Monga, S. Benayoun, and O. Faugeras, “From partial derivatives of
ambos enfoques y analizamos su comportamiento. 3-D density images to ridge lines,” in Proceedings 1992 IEEE Computer
Society Conference on Computer Vision and Pattern Recognition, vol.
Para evaluar el rendimiento de nuestra propuesta compa- 1808. Champaign, Illinois, USA: IEEE, 1992, pp. 354–359.
ramos ambas implementaciones de CRO con algunos de los [16] S. Klein, M. Staring, K. Murphy, M. A. Viergever, and J. P. W. Pluim,
métodos evolutivos más relevantes de la literatura en RI. Di- “Elastix: A toolbox for intensity-based medical image registration,”
IEEE Trans. on Medical Imaging, vol. 29, no. 1, pp. 196–205, 2010.
señamos un exhaustivo estudio experimental con 16 escenarios
de RI mono-modal a partir de cuatro IMRs cerebrales sintéti-
cos, con diferentes niveles de ruido y lesiones. Las imágenes
provienen del repositorio BrainWeb (McGill University [9]).

711
XVIII Conferencia de la Asociación Española para la Inteligencia Artificial

Registrado de imágenes 3D-2D para identificación


forense mediante comparación de radiografı́as
Oscar Gómez∗ , Oscar Ibáñez∗ , Andrea Valsecchi∗ , Oscar Cordón∗ y Tzipi Kahana†
∗ Instituto Andaluz Interuniversitario DaSCI (Data Science and Computational Intelligence), Universidad de Granada, España
† Facultad de Medicina, Universidad Hebrea de Jerusalén, Jerusalen, Israel

Emails: ogomez@decsai.ugr.es, oscar.ibanez@decsai.ugr.es, valsecchi.andrea@gmail.com,


ocordon@decsai.ugr.es, kahana.tzipi@gmail.com

Abstract—La comparación de radiografı́as es una técnica [1] es la única técnica SFI considerada primaria por la Interpol
de identificación forense que conlleva la comparación manual (junto con la comparación de implantes quirúrgicos) [5]. En
de radiografı́as ante-mortem (AM) y post-mortem (PM). Sin la literatura, numerosas estructuras anatómicas como huesos
embargo, éste es un proceso lento y propenso a errores por lo
que su utilidad se ve reducida. El objetivo de este trabajo es y cavidades se han mostrado útiles para realizar una identifi-
proponer y validar un nuevo paradigma asistido por ordenador cación positiva [6]. Éstas están localizadas principalmente en
para comparación de radiografı́as. En concreto, se centra en la zona del cráneo (p. ej. dientes [7] y los senos frontales [8]
reproducir de manera automática los parámetros de adquisición y del pecho (p. ej. clavı́culas [9] y vértebras [10]). Aunque
de la radiografı́a AM en una proyección del modelo 3D PM también hay otras fueras de estas regiones tales como los
mediante una metodologı́a basada en el registrado de imágenes
3D-2D. Este proceso de registrado será guiado por la silueta huesos de la mano [11] y la rótula [12], entre muchas otras.
de la estructura anatómica utilizada para identificar en la Sin embargo, a pesar de ser el método más empleado y útil
radiografı́a AM y un modelo 3D PM de la misma. El problema en SFI, su aplicación todavı́a se basa en una comparación
de optimización subyacente es complejo ya que no se puede manual de los datos AM-PM a través de un proceso de
asumir una inicialización cercana y tampoco se puede depender
del valor de intensidad de los pı́xeles (enfoque tradicional en
inspección visual que depende por completo de la habilidad
imagen médica). Para abordarlo se ha utilizado una meta- y experiencia del experto. Como consecuencia, su utilidad se
heurı́stica, differential evolution, y un método clásico que ha reduce debido a que es un proceso tedioso y propenso a errores
sido adaptado para este problema concreto. Se han realizado debidos al cansancio del experto.
múltiples experimentos para estudiar la precisión y robustez de
Guiados por el análisis de la literatura forense, se han
la propuesta utilizando imágenes sintéticas de clavı́culas, rótula
y senos frontales obteniendo resultados prometedores. distinguido tres etapas consecutivas en proceso automático de
Index Terms—Identificación forense, comparación de radio- identificación mediante CR:
grafı́as, registrado de imágenes 3D-2D, computación evolutiva.
1) Obtención de los datos AM de todos los candidatos
y el procesado del material PM. Incluye la mejora y
I. I NTRODUCCI ÓN segmentación de las imágenes AM y PM.
La identificación forense es de suma importancia en nuestra 2) Producir una radiografı́a PM que simule la transfor-
sociedad [1]. Los métodos principales de identificación son mación proyectiva de cada una de las radiografı́as AM
la odontologı́a forense, el análisis de huellas dactilares y del candidato.
el análisis de ADN. Sin embargo, la aplicación de estos 3) Toma de decisiones en base a la superposición obtenida,
métodos no es posible cuando no se dispone de la suficiente junto con otros factores tales como la calidad de las
información ante-mortem (AM) o post-mortem (PM) debido imágenes o el poder discriminatorio del hueso utilizado.
a la falta de datos por estado de conservación del cadáver Pese a la necesidad de métodos automáticos, esta técnica ha
y/o la ausencia de muestras AM contra las que comparar. sido objeto de pocos trabajos de investigación. En concreto,
En este aspecto, las técnicas de identificación basadas en se han utilizado técnicas de morfometrı́a geométrica, tales
el esqueleto (SFI, por sus siglas en inglés, skeleton-based como el análisis de la elı́ptica de Fourier, para la CR de
forensic identification) pueden suponer la última posibilidad de senos frontales [13], bóvedas craneales [14], clavı́culas [15],
identificación. Esto es debido a que el esqueleto generalmente y rótulas [12]. El enfoque de los dos primeros trabajos
sobrevive a procesos de descomposición natural y no natural, consiste en la segmentación manual del hueso o cavidad en
como por ejemplo es habitual en escenarios de desastres las radiografı́as AM y PM y finalmente compararlas utilizando
masivos. el análisis de la elı́ptica de Fourier. Mientras tanto, los dos
Las técnicas de SFI son usadas para identificación y/o últimos se basan en la adquisición de modelos 3D de los
filtrado dependiendo del poder identificativo de cada hueso o huesos PM utilizando un escáner de luz estructurada, pero la
cavidad [2]. Dentro de las técnicas de SFI, las más importantes decisión final aún implica la comparación de la segmentación
son la superposición craneofacial [3], la reconstrucción facial de la radiografı́a AM contra un conjunto predefinido de
[4] y la comparación de radiografı́as (CR). En concreto, CR imágenes obtenidas a través de rotaciones pre-establecidas

712
XIII Congreso Español en Metaheurı́sticas y Algoritmos Evolutivos y Bioinspirados

del modelo 3D PM. No hay, sin embargo, ningún método establecer una correspondencia entre los puntos 3D y 2D. Los
automático que busque la mejor proyección posible del modelo datos 3D son el hueso o cavidad PM en forma de un modelo
3D. de superficie PM 3D, ya sea que se obtiene al segmentar
El proceso de superposición para CR es complejo debido una imagen volumétrica como una CT o directamente desde
principalmente a dos razones. La primera, la radiografı́a AM un escáner 3D. Los datos 2D son la silueta del hueso en
fue tomada en unas condiciones desconocidas y por tanto no una radiografı́a AM. Los métodos de RI 3D-2D IR para
se puede asumir una inicialización cercana. La segunda, las dominios médicos [21], [22] pueden asumir que trabajan en
intensidades en las imágenes no son fiables o incluso hay es- un entorno controlado. En consecuencia pueden limitar la
cenarios en los que no se dispone de ellas (véase la Sección 2). transformación a solo 6 grados de libertad (trasladaciones y
Esto lleva a que las técnicas habituales de registro de imágenes rotaciones) sin tener en cuenta los parámetros relacionados
(RI) 3D-2D no sean adecuadas para CR y se deben investigar con las distorsiones de perspectiva. Además utilizan inicial-
técnicas diferentes para resolverlo satisfactoriamente, como la izaciones cercanas al Ground Truth (p. ej. en [22] consideran
utilización de algoritmos evolutivos [16]. un error máximo de 20 mm y de rotación de 20 °, de 16
El objetivo de este trabajo es proponer y validar un método mm en [21], etc). Sin embargo, estas asunciones no son
asistido por ordenador para realizar la superposición de un adecuadas para CR. Por supuesto, hay algunas excepciones
modelo 3D de cualquier hueso o cavidad PM y una radiografı́a como Feldman et al. [23] que propuso un método IR 3D-2D
AM segmentada. El método sigue una metodologı́a de RI 3D- basado en la silueta que no depende de las inicializaciones
2D basada en la silueta del hueso o cavidad. Para validar se pero es solo aplicable en el caso calibrado (considerando solo
han utilizado dos tipos de huesos (clavı́culas y rótulas) y uno 6 DoF). No existe ningún enfoque de RI 3D-2D basado en la
de cavidad (senos frontales). silueta que considere 7 grados de libertad sin depender de una
Este artı́culo se organiza de la siguiente manera. En la inicialización cercana.
sección II se hace una revisión del estado del arte de RI.
La sección III describe nuestra propuesta. La sección IV III. R EGISTRADO DE IM ÁGENES PARA COMPARACI ÓN DE
presenta los experimentos realizados junto con sus resultados. RADIOGRAF ÍAS
Por último en la sección V se presentan las conclusiones de No hay un estándar universal para diseñar un método de RI.
este trabajo. No obstante, los métodos de RI suelen tener los siguientes 5
componentes (en la Figura 1 se puede verse un esquema de la
II. A NTECEDENTES Y JUSTIFICACI ÓN
propuesta de RI 3D-2D para CR): (1) el modelo 3D (modelo
RI [17], [18] es el proceso de poner dos imágenes en 3D del hueso PM) y una imagen fija (radiografı́a AM);
un mismo sistema de coordenadas, donde una imagen se (2) la transformación proyectiva responsable de generar una
mantiene fija y la otra es transformada. En el escenario 3D- proyección 2D del modelo 3D; (3) el conocimiento experto
2D, la imagen transformada es siempre la 3D y la 2D se que delimita la transformación proyectiva; (4) una métrica de
mantiene fija. Los métodos de RI 3D-2D son clasificados similitud que mide las similitudes entre la proyección y la
según guı́en el proceso de optimización utilizando intensidades imagen fija; y (5) un optimizador que busca los parámetros de
o caracterı́sticas de las imágenes. la transformación proyectiva según la métrica de similitud.
En imagen médica, los métodos basados en intensidades son
los más extendidos debido a que no requieren segmentaciones, Evaluación de la Proyección de
las cuales introducen subjetividad y errores. Estos han sido Superposición perspectiva
utilizados satisfactoriamente en problemas de registrado de Región de oclusión

Tomografı́as Computarizadas, TACs, (3D) y radiografı́as (2D) Comparación de las


siluetas considerando
oclusiones
[19]. Sin embargo en el problema que nos ocupa (CR), los )
ID
niveles de intensidad han podido cambiar desde el momento r
(S
to
de la adquisición de la radiografı́a y el TAC. Esto se debe a que R
e
c
e
p

r
la densidad de los huesos puede cambiar por muchos motivos Optimización E
m
is
o

provocando un cambio en las intensidades capturadas (p. ej. ta


n
c
ia

Parámetros: tx, ty, tz, rz, ry, rz, SID is


edad, osteoporosis, tiempo transcurrido desde el fallecimiento, D

Cámara /
etc). Otro motivo importante es el hecho de que muchos Contexto y conocimiento experto Generador rayos X

laboratorios forenses hacen uso en la actualidad de escáneres


de luz estructurada [20] debido a su gran disponibilidad y bajo Fig. 1: Esquema de la propuesta de RI 3D-2D para CR.
coste, mientras que solo unos pocos de ellos tienen TACs.
Estas limitaciones descartan los métodos basados en inten-
A. Datos AM y PM
sidades, dejando únicamente los basados en caracterı́sticas.
Los antropólogos forenses consideran que la morfologı́a ósea Las imágenes a registrar son las siguientes:
(silueta) es un aspecto fiable para realizar la identificación • La imagen 2D: la radiografı́a AM.
basada en CR. Por otro lado, no es posible utilizar otras • El modelo 3D: un modelo 3D de la superficie del hueso
caracterı́sticas como puntos homólogos por la imposibilidad de o cavidad. Obtenido mediante el uso de un escáner

713
XVIII Conferencia de la Asociación Española para la Inteligencia Artificial

de luz estructurada del ”hueso limpio” o mediante la del centro de la silueta en la imagen 2D, 3 rotaciones y 1
segmentación del hueso en un TAC. escala que representa el porcentaje de pı́xeles de la imágenes
En esta propuesta, el proceso de RI se guı́a por la silueta ocupados por el bounding box (el cuadrado delimitador) de la
del hueso o cavidad por lo que es necesario su segmentación silueta en la imagen.
en ambas imágenes. En la radiografı́a AM, la silueta puede C. Parámetros y su delimitación con conocimiento experto
estar ocluida por otras estructuras. Por ello aparte de la
silueta es necesario segmentar una región de oclusión donde Los parámetros están solo delimitados por el protocolo de
el experto tiene dudas (véase la Figura 2). En el caso 3D adquisición de radiografı́as [26]. Las radiografı́as son tomadas
hay dos escenarios posibles en función de si se parte de con el cuerpo en una posición conocida (posterioranterior o
un modelo 3D de superficie obtenido con un escáner de luz lateral) y la rotación por tanto pude ser delimitada para ambas
estructurada o de un TAC. En el primer escenario no es transformaciones con un margen de error (p. ej. ±10° o ±20°
necesario ningún preprocesamiento. Por otro lado, en el TAC en ángulos de Euler). En la transformación de perspectiva,
los huesos se segmentan fácilmente mediante el uso de las el protocolo de adquisición también sirve para delimitar la
unidades Hounsfield 1 . trasladación, la SID y también para conocer las dimensiones
del receptor y su resolución (pı́xeles por mm). La trasladación
en los ejes x e y es delimitada por el ancho y alto del receptor,
mientras que la SID del protocolo sirve para delimitar la SID
con un rango de error y también la trasladación en el eje z ya
que el cuerpo se suele colocar pegado al receptor, mientras que
en la transformación ortográfica la trasladación es delimitada
por los lı́mites de la imagen en coordenadas normalizadas
(de -1 a 1) y la escala por el porcentaje de pı́xeles que se
espera que ocupe la silueta en la radiografı́a (desde el 5% al
80%), no requiriendo conocimiento experto. Por último, en
el ortográfico no es necesario conocer las dimensiones del
Fig. 2: Radiografı́a del cráneo: sin segmentar (izquierda), con la segmentación receptor ni su resolución.
de los senos frontales en negro y la región de oclusión en blanco.
D. Métrica de similitud
Para medir las similitudes entre dos siluetas la métrica más
B. Transformación proyectiva utilizada en la literatura es la métrica DICE [27]. En este
Una transformación proyectiva es una transformación entre trabajo, la métrica DICE ha sido adaptada creando una nueva
el mundo 3D y una imagen 2D. Las funciones proyectivas son métrica, Masked DICE (véase la Eq. 1), mediante la inclusión
de dos tipos: proyecciones de perspectiva y ortográficas [24]. de la región de oclusión. La región de oclusión define un área
La transformación que origina una radiografı́a la modelamos que es ignorada por la métrica permitiendo ası́ solapamientos
mediante una transformación de perspectiva simple utilizando parciales y obviando regiones dubitativas (incertidumbre en
solo 7 parámetros: 6 parámetros extrı́nsecos (3 trasladaciones la segmentación). En los casos en los que no haya región de
y 3 rotaciones de la cámara) y 1 intrı́nseco (la distancia oclusión el valor de la métrica Masked DICE será igual al de
entre el emisor y el receptor, SID, por sus siglas en inglés, DICE. En el caso particular donde la proyección del hueso
source image distance) [25] (véase la Figura 1). La mayorı́a esté fuera del campo de visión, el valor de la métrica es fijado
de trabajos en imagen médica consideran solo 6 parámetros a 1.5.
dado que asumen que en un escenario controlado el parámetro 2 · |(IA \ M ) ∩ (IB \ M )|
SID es conocido [21], [22]. Pero en CR, cómo ya se ha Masked DICE = (1)
|IA \ M | + |IB \ M |
comentado en las secciones anteriores, es necesario considerar
los 7 parámetros. donde IA son los pı́xeles de la silueta del objeto A (el
Por otro lado, la transformación ortográfica es un caso hueso segmentado AM), IB son los pı́xeles del objeto B (la
particular de la transformación de perspectiva donde la cámara proyección de hueso PM), y M es la región de oclusión.
está situada en el “infinito” y por tanto no modela distorsiones E. Optimizador
de perspectiva. La mayorı́a de las radiografı́as tienen distor-
El problema de optimización es complejo dado que no se
siones de perspectiva (a excepción de aquellas con una SID
puede hacer uso de las intensidades o de una inicialización
elevada como las imágenes cefalométricas con una SID de 4
cercana, como ya se comentó en las secciones anteriores.
metros). No obstante, el estudio del modelo ortográfico merece
Además se asume una alta multimodalidad del espacio de
la pena debido a que matemáticamente es más sencillo y podrı́a
búsqueda. Para abordar el problema se ha estudiado el uso
ser suficiente para identificar. Esta transformación tiene solo
de dos optimizadores diferentes. El primero está basado en un
6 parámetros: 2 trasladaciones que representan la posición
método de optimización numérica llamado BOBYQA [28],
1 Es una escala cuantitativa utilizada en los estudios de TACs para describir que ya ha sido aplicado a problemas de RI. El segundo está
los diferentes niveles de radiodensidad de los tejidos humanos. basado en Differential Evolution (DE) [29], metaheuristica que

714
XIII Congreso Español en Metaheurı́sticas y Algoritmos Evolutivos y Bioinspirados

ha mostrado un gran comportamiento en los problemas de Todos los experimentos se han realizado en un servidor con
optimización global [30]. 12 nodos, cada uno con un Intel Core i7 4930k 3.4 GHz con
1) EG-BOBYQA el sistema operativo Ubuntu 16.04.
Varios métodos de optimización numérica (tanto de A. Generación del dataset
búsqueda lineal tales como Nelder-Mead, BFGS y LBFGS,
Para medir la capacidad de RI 3D-2D de las propuestas
cómo de región de confianza tales como Levenberg-Marquardt
se han utilizado casos sintéticos, cada uno compuesto por un
y BOBYQA) han sido probados para afrontar este problema de
modelo de superficie 3D y una proyección de perspectiva (2D)
RI utilizando la librerı́a DLIB [31]. El que mejores resultados
aleatoria (dentro del rango de los parámetros). Esto permite
obtuvo en los experimentos preliminares fue BOBYQA.
evaluar objetivamente la calidad de una superimposición in-
Sin embargo, pese a ser el mejor, sus resultados en la experi-
cluso en escenarios con oclusiones debido a que la proyección
mentación preliminar fueron insuficientes debido a que mostró
sin oclusiones también es conocida.
una gran dependencia de la inicialización, especialmente con
En este experimento se han utilizado datos sintéticos de
los parámetros relacionados con la rotación. Para afrontar este
clavı́culas, rótulas y senos frontales. En concreto, se han es-
problema, se ha propuesto EG-BOBYQA (estimation grid-
caneado 10 clavı́culas y 10 rótulas (procedentes del laboratorio
BOBYQA). Este método consiste en realizar diferentes ejecu-
de antropologı́a fı́sica de la Universidad de Granada) con un
ciones de BOBYQA con diferentes inicializaciones mediante
escáner Artec SpiderT M 3D, y 10 senos frontales han sido
el uso de un grid en los tres parámetros de la rotación
segmentados manualmente de TACs (procedentes del Hospital
(limitando el número de evaluaciones de BOBYQA para
de Castilla la Mancha) usando 3D Slicer 4.5.0-1 (véase la
que sea computacionalmente abordable). Además para cada
sección III.A). Para cada uno de los 30 modelos 3D se han
configuración del grid, los parámetros de la trasladación y la
generado 5 proyecciones de perspectiva aleatorias dentro de
escala son estimados en la transformación ortográfica. Hay
los rangos de la Tabla I. Además, el tamaño del receptor
que buscar un compromiso entre la granularidad del grid y el
para senos frontales y rótulas es de 240 mm × 300 mm y
tiempo de ejecución, ya que por ejemplo un grid con pasos de
la SID es de 1000 mm, y en clavı́culas de 430 mm × 350
un grado en los tres ejes de rotación es computacionalmente
mm y 1800 mm (resultado en imágenes de 750 × 900 pı́xeles
inabordable incluso para el menor de los rangos de rotación
y de 1290 × 1050, respectivamente). Para cada una de las
considerados (de 20° en cada eje). Este problema se resuelve
150 imágenes simuladas, dos imágenes adicionales han sido
utilizando varios grid de forma iterativa reduciendo el rango
generadas añadiendo oclusiones en la silueta del 15% y 30%
de rotación y el tamaño del paso hasta alcanzar un paso menor
con sus respectivas zonas de incertidumbre. En total se han
a un grado. El paso inicial ha sido establecido de manera
generado 450 casos positivos de CR con sus respectivos GTs.
experimental en un cuarto del rango de rotación y en cada
iteración es dividido entre cuatro, mientras que el rango de TABLE I: Rango de los parámetros para la transformación de perspectiva
rotación es reducido de la siguiente forma [mejor rotación - delimitados según los protocolos de adquisición [26]
paso paso
2 , mejor rotación + 2 ]. Finalmente la mejor solución
Hueso/Cavidad
Parámetro
Senos frontales Rótulas Clavı́culas
del último grid es mejorada de nuevo utilizando BOBYQA tx (mm) [-125, 125] [-125, 125] [-210, 210]
sin establecer un número lı́mite de evaluaciones. ty (mm) [-150, 150] [-175, 175]
Este optimizador es solo aplicable a la transformación or- tz (mm) [700, 1100] [700, 1900]
rx , ry , y rz (grados) [-10°, 10°], [-20°, 20°]
tográfica dado que la estimación de la escala y la trasladación SID (mm) [9000, 1100] [1600, 1900]
no puede realizarse en la transformación perspectiva dado que
dependen tanto de la trasladación en eje z como de la SID. B. Diseño experimental
2) Differential Evolution
Los parámetros de los optimizadores se han fijado en
DE es una metaheurı́stica propuesta por Storn y Price
base a una experimentación preliminar, siendo sus mejores
[29]. Se ha aplicado con éxito a problemas de optimización
configuraciones las siguientes. En BOBYQA la región de
multimodales debido a su gran robustez, rápida convergencia
confianza inicial se fija en 0.05. En DE 100 individuos, 50000
y al reducido número de parámetros a fijar [32]. Además
evaluaciones, una probabilidad de cruce Pc de 0.5, y un F de
también se ha utilizado en problemas de RI 3D-3D [33]. Los
0.5. Con DE, se han realizado 16 ejecuciones independientes
parámetros a fijar de DE son los siguientes: F (controla la
de cada experimento, dado que DE se basa en un proceso
tasa de mutación), Pc (controla la tasa de recombinación), n
estocástico, para poder estudiar tanto su precisión como ro-
(tamaño de la población) y m (número de generaciones).
bustez. La inicialización de cada ejecución es aleatoria en todo
el rango de los parámetros. Para ambos, se ha establecido un
IV. E XPERIMENTOS
criterio de parada cuando el error de solapamiento es inferior
Los experimentos realizados están dedicados al estudio de al 0.01% de los pı́xeles.
la precisión y robustez de los dos optimizadores en problemas En total se han llevado a cabo 2700 experimentos que se
sintéticos de CR con dos tipos de huesos, clavı́culas y rótulas, desglosan de la siguiente manera:
y un tipo de cavidad, senos frontales, en casos positivos, es 1) Transformación ortográfica: 2 optimizadores (EG-
decir, el caso AM y el PM pertenecen a la misma persona. BOBYQA y DE), 2 rangos de rotación (±10°y ±20°),

715
XVIII Conferencia de la Asociación Española para la Inteligencia Artificial

con los 450 casos simulados (véase que todos los casos Ortografico Ortografico Ortografico Ortografico Perspectiva Perspectiva
fueron generados con la transformación de perspectiva). EG−BOBYQA EG−BOBYQA DE DE DE DE
Un total de 1800 experimentos. [−10, 10] [−20, 20] [−10, 10] [−20, 20] [−10, 10] [−20, 20]

2) Transformación perspectiva: 1 optimizador (DE), 2 ran-


40

Clavicula
gos de rotación (±10°y ±20°), con los 450 casos
20
simulados. Un total de 1800 experimentos. Con esta
transformación no se ha podido probar EG-BOBYQA 0

por los motivos vistos en la sección III.E. 60

mRPD

Rotula
40
C. Resultados 20

Los resultados obtenidos se muestran en la Tabla II para las 0


12.5

Senos Frontales
métricas Masked DICE y mRPD (error medio de la distancia 10.0
7.5
de retroproyección, para más información véase [34]). Las 5.0
métricas Masked DICE y mRPD están correlacionadas según 2.5
el test de correlación de Pearson [35] (obteniendo un coefi- 0.0
30 15 0 30 15 0 30 15 0 30 15 0 30 15 0 30 15 0
ciente de 0.780), lo cual indica que Masked DICE es una buena Porcentaje de oclusion
métrica para guiar el proceso de optimización en CR. También Fig. 3: Boxplots del error mı́nimo obtenido según el hueso o cavidad,
se ve que la transformación de perspectiva obtiene siempre transformación y optimizador bajo la métrica mRPD.
mejores resultados que la ortográfica, lo cual se confirma con
el test de Wilcoxon [36] y el del signo [37] obteniendo unos
valores p de 2.2 · 10−16 y 8.6 · 10−203 , respectivamente. Esta El principal punto débil de esta propuesta es el alto tiempo
diferencia puede explicarse ya que solo la transformación de de ejecución necesario para obtener los resultados (30 minutos
perspectiva puede reproducir las distorsiones de perspectiva de media), haciendo difı́cil volver a ejecutar DE cuando éste
presentes en los casos. Por último, DE obtiene siempre mejores obtiene una mala superimposición. Esto se debe al alto número
resultados tanto en media como en desviación estándar (sd) de evaluaciones que necesita realizar el optimizador.
que EG-BOBYQA, lo cual se confirma también con el test En resumen, DE obtiene buenas superposiciones con ambas
de Wilcoxon y el de signo obteniendo unos valores p de transformaciones, los dos rangos de rotación y los diferentes
2.2 · 10−16 y de 9.2 · 10−110 . niveles de oclusión, pero solo siendo robusto con los senos
frontales debido a la singularidad de su silueta.
TABLE II: Resumen de los resultados bajo las métricas DICE y mRPD según
hueso o cavidad, transformación y optimizador.
Masked DICE mRPD (mm)
V. C ONCLUSIONES
Hueso Optimizador Transf. media sd media sd
Orto. 0.015 0.011 12.128 14.442 La contribución de este trabajo ha sido abordar el problema
DE
Clavı́cula Persp. 0.001 0.003 0.055 0.088 del RI 3D-2D para CR basándose únicamente en la silueta
EG-BOBYQA Orto. 0.044 0.025 12.714 14.373
Orto. 0.014 0.016 11.981 16.270 del hueso o cavidad. Se han considerado dos optimizadores
DE
Rótula Persp. 0.005 0.008 0.761 1.544 (EG-BOBYQA y DE) y dos transformaciones proyectivas
EG-BOBYQA Orto. 0.035 0.020 12.148 16.892
Orto. 0.014 0.055 8.471 3.571 (ortográfica y perspectiva). Se han obtenido resultados prom-
Senos DE
frontales
Persp. 0.001 0.003 0.028 0.067 etedores con un error de solapamiento inferior al 2% de los
EG-BOBYQA Orto. 0.029 0.034 8.285 3.399
pı́xeles entre la silueta AM y la proyección del modelo 3D PM
encontrada por el optimizador. A nivel general, DE ha ganado
La robustez de ambos optimizadores es mejorable dado que a EG-BOBYQA en todos los sentidos tanto en precisión como
tienen algunas ejecuciones con errores muy altos (un 40%2 en robustez. Además la transformación de perspectiva también
con Masked DICE y 60 mm con mRPD). Sin embargo, el ha sido mejor que la ortográfica mostrando la importancia de
error mı́nimo del DE (es decir, el mejor resultado de las 16 poder reproducir las distorsiones de perspectiva. Estos resulta-
ejecuciones) es siempre inferior a 0.5% con Masked DICE y de dos varı́an significativamente según el hueso o la cavidad. Los
0.1 mm con mRPD con las tres estructuras anatómicas para la peores resultados han sido obtenidos con las rótulas presum-
transformación de perspectiva. Mientras que para el ortográfico iblemente por su baja singularidad con un error promedio de
es de 3% y 1 mm, respectivamente. Además ni la oclusión ni el 0.761 mm y 1.5 % de pı́xeles mal superpuestos de acuerdo
rango de rotación han mostrado una influencia significativa en con las métricas mRPD y Masked DICE, respectivamente.
la precisión, afectando ligeramente a la robustez. Por último, Con clavı́culas por otro lado se han logrado errores promedio
también puede verse que existe una gran diferencia según de 0.055 mm y 0.2 %, respectivamente. Mientras que los
la estructura anatómica, siendo los senos frontales los que mejores resultados han sido obtenidos con los senos frontales
obtienen mejoren resultados seguidos de las clavı́culas, y por con un error promedio de 0,028 mm y 0,2 % de pı́xeles mal
último de las rótulas. superpuestos, respectivamente, debido a su singularidad. Estos
2 La métrica DICE multiplicada por 100 es equivalente al porcentaje de resultados concuerdan con el uso que las rótulas y clavı́culas
pı́xeles no coincidentes entre dos siluetas. tienen en identificación limitado principalmente al filtrado de

716
XIII Congreso Español en Metaheurı́sticas y Algoritmos Evolutivos y Bioinspirados

casos [9], [12], mientras que los senos frontales han sido [15] C. N. Stephan, B. Amidan, H. Trease, P. Guyomarc’h, T. Pulsipher,
utilizados directamente para identificación [8]. J. E. Byrd, Morphometric comparison of clavicle outlines from 3d bone
scans and 2d chest radiographs: a shortlisting tool to assist radiographic
En conclusión, se ha logrado automatizar el proceso de identification of human skeletons, Journal of Forensic Sciences 59 (2)
RI necesario para una aplicación adecuada de la técnica CR (2014) 306–313.
con reproducibilidad, objetividad y alta precisión. El principal [16] S. Damas, O. Cordón, J. Santamarı́a, Medical image registration using
evolutionary computation: An experimental survey, IEEE Computational
inconveniente de esta propuesta es el tiempo de cálculo Intelligence Magazine 6 (4) (2011) 26–42.
requerido para obtener las superposiciones (30 minutos en [17] P. Markelj, D. Tomaževič, B. Likar, F. Pernuš, A review of 3D/2D
promedio por superposición). El primer trabajo futuro es la registration methods for image-guided interventions, Medical Image
Analysis 16 (3) (2012) 642–661.
realización de un escenario n contra n con casos positivos y [18] F. P. Oliveira, J. M. R. Tavares, Medical image registration: a review,
negativos que permitirá comprobar si los errores obtenidos Computer Methods in Biomechanics and Biomedical Engineering 17 (2)
son suficientes para identificación. Además de realizar un (2014) 73–93.
[19] P. Markelj, D. Tomazevic, F. Pernus, B. Likar, Robust gradient-based
estudio comparativo de diferentes metaheurı́sticas de rápida 3-D/2-D registration of CT and MR to x-ray images, IEEE Transactions
convergencia [38] para reducir el tiempo de ejecución de la on Medical Imaging 27 (12) (2008) 1704–1714.
propuesta. [20] S. Damas, O. Cordón, O. Ibáñez, J. Santamarı́a, I. Alemán, M. Botella,
F. Navarro, Forensic identification by computer-aided craniofacial su-
AGRADECIMIENTOS perimposition: a survey, ACM Computing Surveys 43 (4) (2011) 27.
[21] D. B. Russakoff, T. Rohlfing, K. Mori, D. Rueckert, A. Ho, J. R. Adler,
Esta investigación ha sido subvencionada por el Ministerio C. R. Maurer, Fast generation of digitally reconstructed radiographs
de Economı́a y Competividad de España bajo el proyecto using attenuation fields with application to 2D-3D image registration,
IEEE Transactions on Medical Imaging 24 (11) (2005) 1441–1454.
NEWSOCO [TIN2015-67661-P], y por el departamento an- [22] J. Jomier, E. Bullitt, M. Van Horn, C. Pathak, S. R. Aylward, 3D/2D
daluz de Innovación, Ciencia y Empresa [TIC2011-7745], model-to-image registration applied to TIPS surgery, in: International
que incluye fondos europeo para el desarrollo de la región. Conference on Medical Image Computing and Computer-Assisted In-
tervention, Springer, 2006, pp. 662–669.
El trabajo del Sr. Gómez ha sido financiado por el MECD [23] J. Feldmar, N. Ayache, F. Betting, 3D-2D projective registration of free-
mediante una beca FPU [FPU14/02380]. El trabajo del Dr. form curves and surfaces, in: Computer Vision, 1995. Proceedings., Fifth
Ibáñez ha sido financiado por el MINECO mediante una beca International Conference on, IEEE, 1995, pp. 549–556.
[24] R. Hartley, A. Zisserman, Multiple view geometry in computer vision,
Juan de la Cierva-Incorporación [JCI-2014-22433]. Cambridge University Press, 2003.
[25] D. Mery, X-ray Testing, Springer International Publishing, Cham, 2015,
B IBLIOGRAF ÍA pp. 1–33.
[1] M. J. Thali, B. Brogdon, M. D. Viner, Forensic radiology, CRC Press, [26] K. L. Bontrager, J. Lampignano, Textbook of radiographic positioning
2002. and related anatomy, Elsevier Health Sciences, 2013.
[2] M. Page, J. Taylor, M. Blenkin, Uniqueness in the forensic identification [27] T. Sørensen, A method of establishing groups of equal amplitude in plant
sciences–fact or fiction?, Forensic Science International 206 (1) (2011) sociology based on similarity of species and its application to analyses of
12–18. the vegetation on danish commons, Kongelige Danske Videnskabernes
[3] M. I. Huete, O. Ibáñez, C. Wilkinson, T. Kahana, Past, present, and Selskab 5 (1948) 1–34.
future of craniofacial superimposition: Literature and international sur- [28] M. J. Powell, The BOBYQA algorithm for bound constrained optimiza-
veys, Legal Medicine 17 (4) (2015) 267 – 278. tion without derivatives, Cambridge NA Report NA2009/06, University
[4] C. Wilkinson, Forensic facial reconstruction, Cambridge University of Cambridge, Cambridge, UK, 2009.
Press, 2004. [29] R. Storn, K. Price, Differential evolution–a simple and efficient heuristic
[5] Interpol, Disaster victim identification guide, Available at: for global optimization over continuous spaces, Journal of Global
https://www.interpol.int/Media/ Files/INTERPOL-Expertise/DVI/DVI- Optimization 11 (4) (1997) 341–359.
Guide-20082. [30] A. K. Qin, X. Li, Differential evolution on the CEC-2013 single-
[6] T. Kahana, J. Hiss, Identification of human remains: forensic radiology, objective continuous optimization testbed, in: 2013 IEEE Congress on
Journal of Clinical Forensic Medicine 4 (1) (1997) 7 – 15. Evolutionary Computation, 2013, pp. 1099–1106.
[7] I. Pretty, A look at forensic dentistry - part 1: The role of teeth in the [31] D. King, Dlib c++ library, Available at: http://dlib.net.
determination of human identity, British Dental Journal 190 (7) (2001) [32] U. Chakraborty, Advances in differential evolution, Vol. 143, Springer,
359–366. 2008.
[8] G. Quatrehomme, P. Fronty, M. Sapanet, G. Grévin, P. Bailet, A. Ollier, [33] J. Santamarı́a, S. Damas, J. M. Garcı́a-Torres, O. Cordón, Self-adaptive
Identification by frontal sinus pattern in forensic anthropology, Forensic evolutionary image registration using differential evolution and artificial
Science International 83 (2) (1996) 147–153. immune systems, Pattern Recognition Letters 33 (16) (2012) 2065–2070.
[9] C. Stephan, A. Winburn, A. Christensen, A. Tyrrell, Skeletal identifica- [34] E. B. van de Kraats, G. P. Penney, D. Tomazevic, T. Van Walsum, W. J.
tion by radiographic comparison: Blind tests of a morphoscopic method Niessen, Standardized evaluation methodology for 2-D-3-D registration,
using antemortem chest radiographs, Journal of Forensic Sciences 56 (2) IEEE Transactions on Medical Imaging 24 (9) (2005) 1177–1189.
(2011) 320–332. [35] K. Pearson, Note on regression and inheritance in the case of two
[10] T. Kahana, L. Goldin, J. Hiss, Personal identification based on radio- parents, Proceedings of the Royal Society of London 58 (1895) 240–242.
graphic vertebral features, The American Journal of Forensic Medicine [36] E. A. Gehan, A generalized wilcoxon test for comparing arbitrarily
and Pathology 23 (1) (2002) 36–41. singly-censored samples, Biometrika 52 (1-2) (1965) 203–223.
[11] M. G. Koot, N. J. Sauer, T. W. Fenton, Radiographic human identifi- [37] W. J. Dixon, A. M. Mood, The statistical sign test, Journal of the
cation using bones of the hand: A validation study, Journal of Forensic American Statistical Association 41 (236) (1946) 557–566.
Sciences 50 (2) (2005) 263–268. [38] Q. Chen, B. Liu, Q. Zhang, J. Liang, P. Suganthan, B. Qu, Problem
[12] E. Niespodziewanski, C. N. Stephan, P. Guyomarc’h, T. W. Fenton, definition and evaluation criteria for CEC 2015 special session and
Human identification via lateral patella radiographs: A validation study, competition on bound constrained single-objective computationally ex-
Journal of Forensic Sciences 61 (1) (2016) 134–140. pensive numerical optimization, Computational Intelligence Laboratory,
[13] A. M. Christensen, Testing the reliability of frontal sinuses in positive Zhengzhou University, China and Nanyang Technological University,
identification, Journal of Forensic Sciences 50 (1) (2005) 18–22. Singapore.
[14] A. B. Maxwell, A. H. Ross, A radiographic study on the utility of cranial
vault outlines for positive identifications, Journal of Forensic Sciences
59 (2) (2014) 314–318.

717
1
XVIII Conferencia de la Asociación Española para la Inteligencia Artificial

Ajuste de un modelo de crecimiento de tumores de


vejiga mediante PSO y predicción con
incertidumbre
Clara Burgos-Simón∗ , Juan-Carlos Cortés∗ , José-Ignacio Hidalgo† , David Martı́nez-Rodrı́guez∗ , Rafael-J.
Villanueva∗
∗ Instituto Universitario de Matemática Multidisciplinar,

Universitat Politècnica de Valéncia, Valencia, Spain


Email: clabursi@upv.es, jccortes@upv.es, damarro3@upv.es, rjvillan@upv.es
† Departamento de Arquitectura de Computadores y Automática

Universidad Complutense de Madrid, Madrid, Spain


Email: hidalgo@ucm.es

Resumen—El cáncer de vejiga es uno de los cánceres más En este trabajo proponemos un modelo matemático para
comunes en el sistema urinario, siendo una neoplasia altamente estudiar la evolución del cáncer y la respuesta inmune desde el
agresiva. Generalmente, el pronóstico no es bueno y es muy momento en el que se diagnostica. En este modelo considera-
difı́cil determinar la evolución para un paciente determinado.
En este trabajo proponemos un modelo matemático dinámico remos el protocolo terapéutico de tratamiento y lo adaptaremos
que describe el crecimiento del tumor de vejiga y la evolución a los datos disponibles que suelen utilizar los médicos para
de la respuesta inmune. Este modelo está personalizado para un conocer el estado de la enfermedad y procurar un tratamiento
solo paciente, y se determinan los valores de los parámetros del adecuado y un seguimiento apropiado a cada paciente.
modelo a través de una calibración que utiliza el algoritmo de Una vez establecido el modelo, realizaremos un calibrado
optimización Particle Swarm Optimization. Debido a la incer-
tidumbre de la evolución del tumor, utilizando los parámetros para determinar los parámetros del modelo que replican la
del modelo calibrado podemos predecir el tamaño del tumor evolución de un paciente particular. Para la calibración, utili-
y la evolución de la respuesta inmune en los próximos meses zaremos una versión del algoritmo de optimización PSO.
asumiendo tres escenarios diferentes: favorable, desfavorable y Una vez calibrado el modelo, utilizaremos los parámetros
neutro.
para hacer una predicción a corto plazo de la evolución del
Keywords: Cáncer de vejiga, Modelo dinámico, Cuantifi- tamaño del cáncer y de la respuesta inmune del paciente. Esta
cación de la incertidumbre, Calibración del modelo, Particle predicción, debido a la escasez de datos, se realizará teniendo
Swarm Optimization. en cuenta 3 posibles escenarios: favorable, neutro y desfavo-
rable.
Aunque es natural en el contexto matemático-computacional
I. I NTRODUCCI ÓN
realizar predicciones una vez obtenida la calibración, en el
El cáncer de vejiga es uno de los cánceres más comunes contexto médico resulta muy innovador debido al poco cono-
del sistema urinario y es una neoplasia altamente agresiva [1], cimiento que se tiene sobre la evolución de esta enfermedad
[2]. El 80 % de los pacientes diagnosticados con este cáncer en cada paciente.
presenta un carcinoma no invasivo que puede ser extirpado
mediante una Resección Trans Uretral (RTU), que es un
II. DATOS DISPONIBLES Y CONSTRUCCI ÓN DEL MODELO
procedimiento endoscópico para eliminar el tumor de la parte
interna de la vejiga [3]. El cáncer de vejiga se caracteriza Habitualmente, un paciente va a urgencias hospitalarias o
por su recurrencia en más de la mitad de los pacientes, pues al médico de cabecera cuando orina sangre (hematuria). El
el tumor reaparece después de un tiempo y puede progresar paciente es derivado al servicio de urologı́a donde, mediante
a cáncer músculo-invasivo. Es en este estadio es cuando los ecografı́a o citoscopia, se confirma si hay un tumor. En
tratamientos se vuelven más agresivos, y pueden incluir la caso de haberlo, empieza el seguimiento y el tratamiento.
extirpación de la vejiga para evitar la diseminación del cáncer Este trabajo se ha realizado conjuntamente con doctores del
a otras partes del cuerpo [4]. Hospital Universitario y Politécnico La Fe de Valencia [6].
El pronóstico del cáncer de vejiga generalmente no es bueno Los médicos han recolectado tejidos biológicos de pacientes
y, después de la RTU, el tratamiento habitual es la instilación que sufren cáncer de vejiga pT1G3, uno de los tipos llamados
de bacilos Calmette-Guérin (BCG) dentro de la vejiga con la superficiales. El protocolo dicta la realización de una RTU
idea de que la BCG se fije a las células tumorales residuales, para extirpar el tumor o tumores, y posteriormente administrar
estimulando la respuesta inmune del paciente contra estas instilaciones de BCG, repitiendo el ciclo hasta que el paciente
células infectadas para eliminarlas completamente [5]. sane completamente (no hay más recurrencias) o reaparezca el

718
2
XIII Congreso Español en Metaheurı́sticas y Algoritmos Evolutivos y Bioinspirados

cáncer aumentando su tamaño y penetrando en el músculo de del tumor en milı́metros, Ti (t) es el diámetro del tumor de
la vejiga de forma que haya que aplicar otros tratamientos más células infectadas por la BCG, B(t) los mililitros de BCG en
agresivos, entre los que puede caber incluso la extirpación de la vejiga y b(t) los mililitros de BCG instilados en una o varias
la vejiga. dosis, en el instante temporal t.
Con la idea de investigar el posible interés de esta técnica El parámetro k describe la tasa de crecimiento del tumor,
para pronóstico y seguimiento de pacientes, hemos selecciona- α la tasa de crecimiento de las células inflamatorias, µ1 es
do de la base de datos del hospital los datos correspondientes la tasa de mortalidad natural de la BCG y µ2 es la tasa de
a un paciente, que llamaremos paciente X, y que se resumen mortalidad natural de las células inflamatorias.
en la tabla I. Los parámetros que describen la interacción entre los
distintos tipos de células son: p1 es la tasa de muerte de
Fecha Procedimiento Tamaño Células
(mm) inflamatorias/campo BCG debido a las células inflamatorias; p2 es la tasa de
01/Mar/2012 Ecografı́a 3-5 - infección de las células tumorales por la BCG; p3 es la tasa de
14/Jun/2012 RTU 25 260 mortalidad de células tumorales infectadas, debido a la BCG;
15/Feb/2015 Citoscopia 1-2 -
28/Apr/2015 RTU 5 515 p4 es el crecimiento de células tumorales por la acción de
30/Jan/2017 Citoscopia 20 - la BCG; p5 es la tasa de mortalidad de células inflamatorias
14/Mar/2017 RTU 30-35 508 por su interacción con células tumorales no infectadas; y p6
Tabla I
DATOS DEL PACIENTE X, QUE TUVO LOS PRIMEROS S ÍNTOMAS EN MARZO representa la tasa de mortalidad de las células tumorales por
DE 2012. D ESDE ENTONCES , SE LE HAN PRACTICADO AL PACIENTE X las células inflamatorias.
TRES RTU.

III. C ALIBRACI ÓN


Además de los procedimientos relacionados en la tabla Para encontrar los parámetros del modelo que hagan que las
I, al paciente X se le han administrado 3 tratamientos de salidas del modelo estén lo más cerca posible a los datos de la
instilaciones de BCG que empezaron los dı́as 10/Ago/2012, tabla I en los instantes de tiempo correspondientes, definimos
26/May/2015 y 27/Abr/2017. La dosis de las instilaciones que la siguiente función de ajuste F :
se administran en la vejiga consisten en 81 ml de colonias Input. Valor de los parámetros a sustituir en el modelo
(k, α, µ1 , µ2 , p1 , p2 , p3 , p4 , p5 , p6 ).
de BCG, instiladas cada semana durante un periodo de seis
Paso1. Sustituir los valores de los parámetros en el modelo (1)-(4).
semanas. Paso2. Ejecutar el modelo y extraer los valores devueltos por el
Hemos adaptado el modelo introducido en [7] a los datos modelo para el tamaño del tumor y para el número de
disponibles y a la práctica clı́nica y protocolos del Hospital La células inflamatorias por campo en los mismos instantes
Fe. En una primera etapa, el tumor crece y no se administra temporales en los que tenemos datos en la tabla I.
ningún tratamiento hasta que se realiza la RTU. En esta etapa, Paso3. Calcular el error cuadrático medio entre las salidas del
sólo hay interacción entre las células tumorales y las inflama- modelo del Paso 2 y los datos de la tabla I.
torias, que constituyen la respuesta del sistema inmune global La calibración del modelo se ha hecho en etapas porque el
contra el tumor. Después de que en la RTU se reseccionen protocolo no es un proceso continuo debido a la extracción
los tumores de la vejiga, al cabo de unas semanas empieza la brusca del tumor mediante la RTU. Además, no todos los
administración del tratamiento de BCG. Desafortunadamente, parámetros se consideran constantes en el tiempo. La respuesta
la limpieza completa de células tumorales durante la RTU es inmune relacionada con la tasa de crecimiento p4 y la tasa de
imposible debido a la teorı́a de la siembra [8], por lo que las eficacia p6 , se va a considerar variable en el tiempo.
células tumorales residuales siguen creciendo. Sin embargo, La primera etapa será desde 01/Mar/2012 hasta la primera
con la administración de la BCG se pretende eliminar estas RTU. La segunda etapa es hasta la segunda RTU y la tercera
células residuales debido a que el sistema inmune genera una hasta la tercera RTU.
respuesta especı́fica más agresiva y efectiva contra las células Vamos a minimizar la función F en cada etapa, determi-
tumorales infectadas por la BCG. nando los valores de los parámetros del modelo utilizado el
La evolución de estas interacciones se modela mediante el algoritmo rPSO [9]. Se trata de un algoritmo bio-inspirado
siguiente sistema de ecuaciones en diferencias: basado en el intercambio de información entre las diferentes
partı́culas que forman el enjambre. La función objetivo (en
nuestro caso, la función a minimizar) es evaluada para cada
E(t + 1) = E(t) − µ2 E(t) + αTu (t) + p4 E(t)B(t) partı́cula, donde las partı́culas son vectores formados por los
− p5 E(t)Tu (t), (1) valores de los parámetros del modelo. En cada iteración,
Tu (t + 1) = Tu (t) − p2 B(t)Tu (t) − p6 E(t)Tu (t) actualizamos los valores de la posición de las partı́culas dentro
del espacio de parámetros mediante las siguientes expresiones:
+ kTu (t), (2)
Ti (t + 1) = Ti (t) − p3 E(t)Ti (t) + p2 B(t)Tu (t), (3) posi+1 = posi + veli , (5)
B(t + 1) = B(t) − µ1 B(t) − p1 E(t)B(t)
− p2 B(t)Tu (t) + b(t), (4)
veli+1 = U (0, 1) ∗ w ∗ veli + U (0, 1) ∗ c1 ∗ (pi,mejor − posi )
donde E(t) es el número medio de células inflamatorias + U (0, 1) ∗ c2 ∗ (gmejor − posi ).
por campo de visión del microscopio, Tu (t) es el diámetro (6)

719
3
XVIII Conferencia de la Asociación Española para la Inteligencia Artificial

donde:
800
U(0,1) es una muestra de una distribución uniforme entre

Immune Response
700
los valores [0, 1]. Este valor es muestreado de forma

(Cells/Field)
600
independiente para cada meta-parámetro dentro de la
500
función, para cada partı́cula dentro del enjambre y para
400
cada iteración dentro del proceso.
300
pi,mejor es la posición de la mejor evaluación de la fun-
ción para cada partı́cula individual del enjambre (mejor
30
local).
25
gmejor es la posición de la mejor evaluación de la función

Tumor Size
20

(mm)
realizada por cualquiera de las partı́culas que forman el 15
enjambre durante todo el proceso (mejor global). 10

Junto con las ecuaciones descritas, al proceso se le añade 5

una componente de mutación para evitar que las partı́culas 0


0 500 1000 1500
converjan en un mı́nimo local en lugar del global. Este proceso Time (days)
se realiza de la siguiente manera:
una partı́cula se rechaza y se genera una completamente Figura 1. Gráficas con la evolución de la respuesta inmune (arriba) y del
nueva con un 10 % de probabilidad; tamaño del tumor (abajo) con los parámetros obtenidos en la calibración del
modelo. t = 0 corresponde al 01/Mar/2012.
si la partı́cula no ha sido rechazada, con un 10 % de
probabilidad se le aplica una mutación.
Se han realizado diversas pruebas con números diferentes
de partı́culas, siendo el número que mejores resultados nos ha consiste en la misma respuesta del sistema inmune como en
dado el de 60 partı́culas. También se han realizado diversas la tercera etapa, es decir, la respuesta del sistema inmunitario
pruebas con el valor de los meta-parámetros w, c1 y cy , siendo permanece constante. El escenario desfavorable se basa en el
los valores finalmente utilizados w=0.73, c1 =1.5 y c2 =1.5. hecho de que la respuesta del sistema inmunitario disminuye
en la misma proporción que disminuyó desde la segunda a la
tercera fase.
IV. R ESULTADOS
En las figuras 2, 3, 4, se muestran los diferentes escenarios.
Los parámetros del modelo obtenidos en la calibración son
La predicción empieza desde la la lı́nea negra vertical.
los que se muestran en la tabla II.
En el escenario favorable, el tratamiento con BCG tiene un
Parámetro Valor Parámetro Valor resultado positivo y el tumor ya no crece más. En el escenario
k 0.01563 Tu (RT U1 ) 0,02
α 0.005 p4 (RT U1 ) 1e-4
neutral, se estima que ocurrirá una recurrencia del cáncer con
µ1 0.8 p6 (RT U1 ) 1.62e-5 un tumor del tamaño de 5 mm que se prevé para el 15 de
µ2 0.0005 agosto de 2018. En el escenario desfavorable, la recurrencia
p1 8e-5 Tu (RT U2 ) 0.02
p2 1e-3 p4 (RT U2 ) 5.6e-4
del cáncer de vejiga con un tumor del tamaño de 5 mm se
p3 1e-4 p6 (RT U2 ) 6.3e-6 prevé para el 25 de mayo de 2018.
p4 0.0
p5 0.0
p6 0.0
Tu (0) 5.0 800
E(0) 260
Immune Response

Tabla II 700
(Cells/Field)

VALORES DE LOS PAR ÁMETROS DEL MODELO CALIBRADOS PARA EL 600


PACIENTE X. N ÓTESE QUE LOS PAR ÁMETROS p4 Y p6 CAMBIAN CON EN
500
CADA ETAPA . L OS VALORES QUE ACOMPA ÑAN A RT U1 Y RT U2
CORRESPONDEN A PAR ÁMETROS VARIABLES TRAS LAS RT U1 Y RT U2 , 400
RESPECTIVAMENTE .
300

30
En la figura 1, se puede ver el resultado de la calibración,
25
en la de arriba la respuesta inmune y en la de abajo el tamaño
Tumor Size

20
(mm)

del tumor. Las subidas bruscas en forma de dientes de sierra 15


en la gráfica de la respuesta inmune son debidas a las dosis 10
semanales de instilaciones de BCG. Las caı́das en la gráfica 5
del tamaño del tumor, corresponden a cada RTU. 0
0 500 1000 1500 2000
Debido a la incertidumbre en la evolución futura, con el Time (days)
fin de predecir la dinámica del cáncer de vejiga, se han
considerado tres escenarios diferentes: favorable, neutral y
Figura 2. Escenario favorable. La BCG acaba con el tumor.
desfavorable. En el escenario favorable la respuesta del sistema
inmune es mayor que la segunda etapa. El escenario neutral

720
4
XIII Congreso Español en Metaheurı́sticas y Algoritmos Evolutivos y Bioinspirados

Immune Response
800
del tumor.
700
(Cells/Field)

600
VI. AGRADECIMIENTOS
500 Este trabajo ha sido parcialmente financiado por el proyecto
400
del Ministerio de Economı́a y Competitividad MTM2017-
300
89664-P y GenObIA-CM con referencia (S2017/BMD-3773)
financiado por la Comunidad de Madrid y cofinanciado
30 con Fondos Estructurales de la Unión Europea y Ministerio
25 de Economı́a y Competitividad TIN2014-54806-R (HERA-
Tumor Size

20 CLES).
(mm)

15

10 R EFERENCIAS
5
[1] Official Site for Spanish Medic Oncology Society, https://www.seom.org,
0
0 500 1000 1500 2000 accessed: 08/05/2018.
Time (days) [2] R. T. Greenlee, M. B. Hill-Harmon, T. Murray, M. Thun, Cancer statistics,
2001, CA: A Cancer Journal for Clinicians 51 (1) (2001) 15–36. doi:
10.3322/canjclin.51.1.15.
Figura 3. Escenario neutro. Se espera un tumor de 5mm para el 15 de agosto URL https://doi.org/10.3322/canjclin.51.1.15
de 2018. [3] R. Devere White, E. Stapp, Predicting prognosis in patients with
superficial bladder cancer, ONCOLOGY 12 (12) (1998) 1717–1723.
URL https://www.scopus.com/inward/record.uri?
800 eid=2-s2.0-0005479569&partnerID=40&md5=
a865e77b1a2c890bf2985b1517d7e3b6
Immune Response

700
[4] S. Holmang, H. Hedelin, C. Anderstrom, S. L. Johansson, The relations-
(Cells/Field)

600 hip among multiple recurrences, progression and prognosis of patients


500
with stages TA and t1 transitional cell cancer of the bladder followed
for at least 20 years, The Journal of Urology 153 (6) (1995) 1823–1827.
400 doi:10.1016/s0022-5347(01)67321-x.
300
URL https://doi.org/10.1016/s0022-5347(01)67321-x
[5] G. Redelman-Sidi, M. S. Glickman, B. H. Bochner, The mechanism of
action of BCG therapy for bladder cancer—a current perspective, Nature
30 Reviews Urology 11 (3) (2014) 153–162. doi:10.1038/nrurol.
25 2014.15.
Tumor Size

20
URL https://doi.org/10.1038/nrurol.2014.15
(mm)

[6] Official Site for Hospital Universitari i Politècnic La Fe, Valencia, Spain,
15
http://www.hospital-lafe.com, accessed: 07/05/2018.
10 [7] S. Bunimovich-Mendrazitsky, E. Shochat, L. Stone, Mathematical model
5 of BCG immunotherapy in˜superficial bladder cancer, Bulletin of Mathe-
0
matical Biology 69 (6) (2007) 1847–1870. doi:10.1007/s11538-
0 500 1000 1500 2000 007-9195-z.
Time (days) URL https://doi.org/10.1007/s11538-007-9195-z
[8] A. Wein, L. Kavoussi, A. Novick, A. Partin, C. Peters, Campbell-Walsh
Urology, Campbell-Walsh Urology, Elsevier Health Sciences, 2011.
Figura 4. Escenario desfavorable. Se espera un tumor de 5mm para el 25 de URL https://books.google.es/books?id=W1aeyJD46kIC
mayo de 2018. [9] C. Jacob, N. Khemka, Particle swarm optimization in Mathematica.
an exploration kit for evolutionary optimization, IMS’04, Proc. Sixth
International Mathematica Symposium, Banff, Canada.
V. C ONCLUSIONES
En este trabajo presentamos un modelo dinámico para
describir la evolución de un tumor de la vejiga en un paciente.
El modelo se ha calibrado en varias etapas y los parámetros
obtenidos nos permiten dar un pronóstico sobre el crecimiento
del tumor en los próximos meses en tres escenarios: favorable,
desfavorable y neutro. Que nosotros sepamos, éste es el primer
acercamiento de este tipo. Los resultados parecen prometedo-
res y ha creado expectación en el equipo médico con el que
colaboramos debido al desconocimiento de la evolución de
este tipo de cáncer en cada paciente.
Cuando tengamos más datos disponibles, seremos capa-
ces de verificar la validez de nuestro enfoque, de realizar
predicciones personalizadas a cada paciente más precisas y
mejores, dando herramientas a los médicos para administrar
tratamientos, para programar las revisiones de seguimiento y,
en el futuro, para determinar mejores estrategias para mejorar
la salud del paciente, su calidad de vida y evitar las recidivas

721
XVIII Conferencia de la Asociación Española para la Inteligencia Artificial

On the Use of Fitness Sharing in Studying the


Genetic Code Optimality
José Santos Ángel Monteagudo
Department of Computer Science, Department of Computer Science,
University of A Coruña, A Coruña, Spain University of A Coruña, A Coruña, Spain
Email: jose.santos@udc.es Email: angel.minsua@udc.es

Abstract—Since the canonical genetic code is not universal quality of those codes [1]. The results of the works in this
several theories arose to explain the evolution to its present form. alternative tend to indicate that the CGC is quite better
Different computational methods were applied to analyze the optimized with respect to random codes.
optimality level of the canonical code organization, including our
previous works using evolutionary computing in the problem. We 2. The engineering approach, which compares the CGC
discuss here the possibilities that the use of the classical fitness against the average random codes and with respect to better
sharing technique provides for obtaining knowledge about the codes (typically obtained with local search algorithms) [2].
fitness landscape involved in the optimization of the genetic code. This alternative shows that the CGC has a certain level of
optimization, but is still far from optimal.
In these alternatives, the “quality” of a hypothetical code is
I. I NTRODUCTION
defined taking into account the consequences of all possible
The canonical genetic code (CGC), present in most superior mutations in the codons. A mutation in a codon base can
organisms, establishes the association between codons and change the amino acid codified, which can take a serious
amino acids. In the canonical code there are 64 codons of three consequence on the resultant protein. Usually, it is considered
bases that encode 20 amino acids. Thus, the genetic code is a property (or group of properties) of the codified amino acid,
redundant, since several codons codify the same amino acid. like the polar requirement (hydrophobicity), since it is the
However, the canonical code is not universal, since there are most important one in defining the folding of the protein. The
other different associations between codons and amino acids. quality is defined as the Mean Square (MS) of the difference
Mitochondrial DNA is an exception example. The exceptions of the property values of the corresponding amino acids before
show that the code could evolve in its origin, and it is an open and after the mutation. This is averaged for all base mutations
question how the code evolved to the present form (the CGC). of all codons. The best code would be the one that minimizes
Since other codes could appear, several models of hypothet- MS, that is, the consequences of the mutations (with the lowest
ical genetic codes were considered, with different associations consequence on the phenotype, i.e., the proteins).
between codons and amino acids. Considering only the present We introduced the possibility of evolutionary computation
form of a genetic code with codons of three bases, if the codon to discover better genetic codes [3], with a classical genetic
set of the CGC is maintained, allowing only swaps of amino algorithm (GA) (with ad hoc operators depending on the
acids between the 20 codon sets, the possible codes are 20! genetic code model of alternative codes), studying the level
(2.43 · 1018 ). Without that restriction, in the sense that every of optimality reached by the CGC in the huge landscapes
codon can codify every amino acid, the number of alternative considered, and taking into account aspects like the different
codes is really huge, larger than 1.51 · 1084 . mutation probability of transversion and transition mutations
In this research there are basically three theories about the in the codon bases, or the biases in mutation probability in
reasons regarding the evolution of the genetic code: i) The the three codon bases. In [4] we extended the analysis using
stereochemical theory stablishes that codon assignments are a model of possible genetic codes that considers the known
dictated by physicochemical affinity between amino acids and codon reassignments. Depending on the genetic code model
the cognate codons, ii) the co-evolution theory states that a and those commented aspects, the optimization level of the
set of precursor amino acids passed part or all of their codon CGC varies, but in all cases is far from optimal, and in
domain to the biosynthetically produced amino acids, and iii) agreement with the engineering approach.
the physicochemical or error minimization theory states that Since there is a discussion about whether the CGC is located
the main factor in the code’s evolution was the minimization in a local minimum (or close to a minimum) in the quality
of the adverse effects of mutations. landscape and whether the landscape has a multimodal nature,
In this last error minimization theory there are two different in a recent work [5] (which is summarized here) we introduced
alternatives to assess the level of optimization of the CGC: the use of the classical Fitness Sharing (FS) technique [6] in
1. The statistical approach considers random alternative the evolutionary algorithm to inspect that possible multimodal
codes and compares the CGC against the average optimization nature. FS allows the division of the population into different

722
XIII Congreso Español en Metaheurı́sticas y Algoritmos Evolutivos y Bioinspirados

in 3 cases: (a) without FS, (b) FS with σshare = 0.01 and (c)
FS with σshare = 0.1. The figures at the right correspond to
the histograms of interdistances between the encoded codes
at that final generation. The distance dij between two codes i
and j is measured taking into account the difference in polar
requirement between the amino acids encoded in the same
positions by both population codes, normalized in [0,1].
The distances of the population (1000 individuals) to the
canonical code vary in a range between 0.3 and 0.6. Many of
the evolved codes are better adapted than the canonical code
(the dashed line represents the MS value of the CGC), showing
that these better codes are far from the CGC. There is not any
clustering of individuals, independently of the value of σshare ,
which indicates that there are not deep local minima and that
the CGC is not located in an area of a deep local minimum.
Moreover, the CGC was introduced in the initial population
in the 3 cases. In all runs the CGC disappears from the
population in few generations (as shown in [5]), even with
the use of fitness sharing, which is another evidence that the
CGC is not located in an area corresponding to a deep local
minimum. The interdistances (Figure 1, right part) show that,
without FS, the individuals are close to the best solution,
whereas the solutions are more spread in the search landscape
with larger values of σshare when FS is used. Since there are
Fig. 1. Left: MS value of the hypothetical codes of the final genetic population not interdistance values close to 0 in the histogram (i.e., no
vs. their distances to the canonical code and using restrictive codes. Right:
Histograms of interdistances of final evolved codes. clusters), both graphs (with FS) indicate that the landscape
does not present clear localized areas of deep local peaks, as
subgroups according to the similarity of the individuals, groups well as that the CGC is not located in one of such areas.
that perform a simultaneous search in the best found promising III. C ONCLUSION
areas (global or local minima) of the search landscape. The main conclusion to be drawn from the results is that the
The use of fitness sharing serves for two purposes: i) to have fitness landscape, although is clearly rugged, does not have a
an indirect view of the huge search landscape and to locate multimodal nature with deep localized areas of low MS values
the CGC in relation to the best possible codes that could be and separated by barriers of high MS values. Therefore, the
obtained. ii) Given the nature of the landscape obtained in i), fitness landscape considered in the error minimization theory
to determine the difficulty of evolution of hypothetical genetic does not explain how the canonical code ended its evolution
codes in such a landscape. in an area that does not correspond to a deep local minimum.
II. R ESULTS WITH A RESTRICTIVE CODE MODEL ACKNOWLEDGMENT
An example of a run of the evolutionary algorithm is This work was funded by Xunta de Galicia (project GPC
presented here. All the details about the GA implementation ED431B 2016/035), Xunta de Galicia (“Centro singular de in-
(genetic operators, encoding of hypothetical genetic codes) are vestigación de Galicia” accreditation 2016-2019 ED431G/01)
in [5]. We present results of an example run with and without and the European Regional Development Fund (ERDF).
the use of fitness sharing and with a restrictive model of
R EFERENCES
hypothetical codes. In this model, the pattern of synonymous
[1] S. Freeland, R. Knight, and L. Landweber, “Measuring adaptation within
coding found with the CGC is maintained, that is, the 21 CGC the genetic code,” Trends in Biochemical Sci., vol. 25(2), pp. 44–45, 2000.
non-overlapping sets of codons are fixed (20 sets correspond [2] M. Di Giulio, “The origin of the genetic code,” Trends in Biochemical
to the amino acids and one set to the 3 stop codons). The 20 Sciences, vol. 25(2), p. 44, 2000.
[3] J. Santos and A. Monteagudo, “Study of the genetic code adaptability
amino acids are randomly assigned to one of the 20 sets while by means of a genetic algorithm,” Journal of Theoretical Biology, vol.
the same 3 stop codons are fixed as in the CGC. 264(3), pp. 854–865, 2010.
Figure 1 corresponds to a run of the GA without FS and [4] J. Santos and A. Monteagudo, “Simulated evolution applied to study the
genetic code optimality using a model of codon reassignments,” BMC
with FS with two values of the parameter “sharing radius” Bioinformatics, vol. 12:56, 2011.
(σshare = 0.01 and σshare = 0.1), which controls the extent [5] J. Santos and A. Monteagudo, “Inclusion of the fitness sharing technique
of sharing [6]. In Figure 1, subfigures at the left, the x-axis in an evolutionary algorithm to analyze the fitness landscape of the genetic
code adaptability,” BMC Bioinformatics, vol. 18:195, 2017.
corresponds to the distance of each encoded code to the CGC [6] D. Goldberg and J. Richarson, “Genetic algorithms with sharing for multi-
whereas the y-axis corresponds to the code MS value. These modal function optimization,” Proceedings 2nd International Conference
graphs correspond to the final populations at generation 100 on Genetic Algorithms, pp. 41–49, 1987.

723
XIII Congreso Español
de Metaheurísticas,
Algoritmos Evolutivos y
Bioinspirados
(XIII MAEB)

MAEB 10:
COMPUTACIÓN E VOLUTIVA:
FUNDAMENTOS Y M ODELOS I
XIII Congreso Español en Metaheurı́sticas y Algoritmos Evolutivos y Bioinspirados

Toolkit for the Automatic Comparison of


Optimizers (TACO): Herramienta online avanzada
para comparar metaheurísticas
1st Daniel Molina 2nd Antonio LaTorre
Departmento de Ciencias de la Computación e I.A. DATSI, ETSIINF
Universidad de Granada Centro de Simulación Computacional
Granada, España Universidad Politécnica de Madrid
dmolina@decsai.ugr.es Madrid, España
atorre@fi.upm.es

Resumen—El campo de las metaheurísticas es un campo la propuesta con los otros algoritmos publicados, simplificando
en continua innovación, en donde los investigadores proponen el proceso. Sin embargo, realizar una correcta experimentación
frecuentemente nuevas propuestas, propuestas que tienen que ser sigue siendo una tarea muy laboriosa y costosa en tiempo.
adecuadamente comparadas con el estado-del-arte para probar
su efectividad. El uso de benchmarks estándar permite comparar El investigador no sólo tiene que recopilar los resultados de
directamente los resultados de los algoritmos entre sí, pero su propuesta, sino también los de los algoritmos con los
incluso esas comparaciones suponen un proceso laborioso y que se va a comparar. Y la recopilación de datos es sólo el
repetitivo que consume gran parte del proceso de investigación primer paso: los datos deben normalizarse (obtener la mismas
en metaheurísticas. En este trabajo proponemos Toolkit for the medidas y con la misma frecuencia), agruparse (en funciones
Automatic Comparison of Optimizers, TACO, una herramienta
online avanzada para comparar metaheurísticas, que además de similares para su análisis), organizarse (en tablas), y analizarse
almacenar los resultados de distintos algoritmos competitivos (mediante una o varias medidas estadísticas o visualizaciones).
para distintos benchmarks (para usarlos como algoritmos de Y, por cada cambio en alguno de los algoritmos (mejora
referencia), es capaz de realizar de forma automática una de la propuesta, por ejemplo), estos pasos deben repetirse,
variedad de comparaciones. De hecho, permite comparar no incrementando el tiempo dedicado a las comparativas.
sólo los algoritmos previamente almacenados, sino también los
resultados de nuevos algoritmos sin necesidad de registrarse, e En este trabajo proponemos Toolkit for the Automatic Com-
incluso para funciones específicas (no limitado a un benchmark parison of Optimizers, TACO, accesible en https://tacolab.org
concreto). Consideramos que es una herramienta muy útil para (con código disponible), una herramienta online avanzada que
todo tipo de investigaciones en metaheurísticas. Como prueba
de su conveniencia, ofrecemos una instancia de demostración de
combina un repositorio públicamente accesible de resultados
sus características, sobre la que se han realizado las distintas para distintos benchmarks con una herramienta de análisis
comparaciones que incluimos en este trabajo. modular que permite comparar fácilmente los resultados de
Index Terms—Comparativa de algoritmos, Herramienta web, distintos algoritmos, tanto para la fase de desarrollo del
Optimización Global de Alta Dimensionalidad. algoritmo como para la obtención de tablas y gráficas finales
para la publicación del trabajo. Entre sus características más
I. I NTRODUCTION
interesantes están:
El uso de metaheurísticas es muy común en problemas de
optimización de diversa índole, ya que son algoritmos capaces Suporte para distintos benchmarks, cada uno con sus
de obtener muy buenos resultados en un tiempo limitado [1]. propias propiedades: funciones asociadas y grupos de
Este interés conduce a que se presenten un número continuo funciones, tamaño del problema (dimensión), hitos, etc.
de propuestas cada año en la literatura científica. Un paso Diseño modular: La aplicación permite analizar según
necesario para que la comunidad científica pueda considerar una serie de informes, que pueden ser generales, o ser
una propuesta es el de realizar una adecuada validación experi- específicos para un determinado benchmark.
mental en la que, para un conjunto de problemas (benchmark), Repositorio de resultados de distintos algoritmos: La base
se compare la propuesta presentada con distintos algoritmos, de datos no sólo almacena estadísticas comunes (como
especialmente algoritmos del estado-del-arte. media, mínimo, ...) que puedan recogerse de colecciones,
Habitualmente, la comparativa implica realizar una misma sino que pueden almacenar todos los resultados para
experimentación tanto con la propuesta como con los algorit- realizar comparaciones estadísticas que lo requieran.
mos de referencia (usados para comparar). Afortunadamente, Definición flexible de informes: La aplicación ofrece una
cada vez está más consolidado el uso de benchmarks específi- capa de abstracción de gráficas (líneas, barras, etc.) para
cos en los que se fijan a priori las condiciones experimentales, permitir incorporar nuevos informes
por lo que el problema se reduce a comparar los resultados de Exportación de datos. Para poder usarse en publicaciones

727
XVIII Conferencia de la Asociación Española para la Inteligencia Artificial

tanto las gráficas como las tablas se pueden guardar lo- los visualiza usando JavaScript. Para ello, usa las siguientes
calmente para usarlas en distintos formatos. Las gráficas tecnologías webs:
se pueden guardar en los formatos bitmap PNG y JPEG, HTML5, CSS3 y Javascript (Vue.js3 framework) en el
en informes PDF, o formato vectorial SVG. Las tablas frontend.
en formato tanto Excel (para posterior análisis) como El entorno Python Flask4 y SQL Alchemy5 como back-
Latex (para incluirlo directamente en publicaciones). En end.
las tablas se puede elegir el número de cifras decimales Intercambio de datos entre ambos mediante peticiones
que se desean obtener (aunque en Excel no es importante, AJAX y mensajes JSON.
en Latex sí lo es para poder insertarlo directamente en El framework Vue.js es usado para dar una imagen dinámica
las publicaciones). de la web, pidiendo por AJAX toda la información (bench-
TACO está inspirada en una herramienta previa [2] pero marks, dimensionalidad, algoritmos, informes, etc.) al backend
resuelve muchas de sus limitaciones. (con almacenamiento local para incrementar el rendimiento).
No requiere que el usuario almacene previamente los Este diseño permite incorporar fácilmente la herramienta en
resultados para comparar. Cualquier usuario (sin regis- otra aplicación web, desde páginas estáticas a sistemas CMS
trarse) puede ejecutar su análisis simplemente subiendo como Wordpress o similares.
los resultados en un formato soportado, y comparar entre
III. M ODOS DE TRABAJO
sí tanto los de la base de datos como los indicados por
fichero. Existen dos formas de trabajar, se pueden comparan usando
TACO permite que los usuarios identificados posean los resultados de un benchmark estándar del sistema, o usando
repositorios propios, con un catálogo de resultados de un conjunto de funciones (es muy útil para comparar para
carácter privado. Los usuarios pueden solicitar hacerlos funciones distintas, o un subconjunto de funciones).
públicos cuando el paper esté publicado. III-A. Comparando con un benchmark propio
Una tecnología y diseño mucho más flexible y modular,
Este es el caso más sencillo, en el que se desea únicamente
para ir incorporando mejoras.
comparar entre sí distintos resultados que posee el usuario.
Existen otras herramientas de análisis, discutidas en [3], En este caso, el usuario debe ofrecer sus datos por medio
como jMetal1 o MOEA framework2 . Sin embargo, en esos de un fichero de entrada aceptado con los distintos resultados
casos el proceso de análisis suele estar asociado con el de cada algoritmo para un número de funciones. Un ejemplo
propio entorno (framework) de optimización, limitando su uso. sería un Excel con tantas columnas como funciones, con los
TACO se centra en comparar resultados ya obtenidos, sin resultados de cada algoritmo en su propia hoja del Excel.
interferir en la forma de programar/ejecutar el código. Adicionalmente se puede establecer una columna milestone
Otro aspecto muy importante de la herramienta es que no só- para guardar resultados intermedios. Una vez subido el fichero,
lo está pensada como herramienta de soporte a investigadores el usuario selecciona el tipo de comparación de entre las
para comparar su propuesta con otros algoritmos, sino que disponibles de forma genérica (descritos en la sección V) y
también está ideada para organizadores de competiciones (de procede al análisis.
hecho, surgió a partir de esa necesidad). Gracias a su diseño
modular, es bastante directo incorporar una nueva sesión III-B. Comparando con un benchmark estándar
especial o competición de manera sencilla. Además, se puede Una sesión típica empieza seleccionando el benchmark
usar también para que los propios participantes comparen sus sobre el que se quiere comparar. Luego, el usuario decide
propuestas con los algoritmos de referencia de la competición. el tamaño del problema (si hay más de uno), y selecciona
Una vez que la competición haya tenido lugar, se pueden hacer de una lista de algoritmos cuáles quiere comparar. Además, el
publicos los resultados de todos los algoritmos participantes. usuario puede subir un fichero con datos de algoritmos propios
Este trabajo está organizado de la siguiente manera: La para incorporaros a la comparativa. Una vez elegidos todos los
sección II describe brevemente la arquitectura de la aplicación. datos, el usuario selecciona el tipo de comparación de entre las
En la sección III se muestra el esquema de funcionamiento. disponibles (descritas en la sección V) y procede al análisis.
En la sección IV resumimos algunas opciones disponibles y El modelo de datos está diseñado en torno al concepto
mostramos unas capturas relevantes. La sección V repasa el de benchmark. Cada benchmark está asociado con una tabla
diseño modular de informes, con ejemplos concretos. Final- diferente en donde se almacenan los resultados de los algorit-
mente, en la sección VI resumimos las principales conclu- mos. Esto permite que distintos benchmarks puedan tener un
siones obtenidas. distinto número de funciones de forma sencilla. Agrupada en
torno a los benchmarks, se almacena la siguiente información:
II. A RQUITECTURA
Dimensión: algunos benchmarks poseen un mismo
La aplicación web está construida como una página estática tamaño del problema, y otros plantean para las mismas
que mediante llamadas Ajax pide los datos dinámicos y
3 https://vuejs.org/
1 https://jmetal.github.io/jMetal/ 4 http://flask.pocoo.org/
2 http://moeaframework.org/ 5 https://www.sqlalchemy.org/

728
XIII Congreso Español en Metaheurı́sticas y Algoritmos Evolutivos y Bioinspirados

funciones/problemas distintos valores, para medir la es- distintos algoritmos, que serán comparados entre sí y con el
cabilidad del algoritmo. resto de algoritmos seleccionados. En este punto, el usuario
Hitos: un benchmark puede almacenar los resultados escogerá el tipo de informe de entre los disponibles que, como
finales o en distintos momentos de la ejecución del ya se indicó, dependerá del tipo de benchmark elegido.
algoritmo. El sistema guarda información de cada hito.
Grupos o categorías de funciones: Los benchmarks
pueden tener problemas/funciones con distintas carac-
terísticas, y eso permite analizar los resultados por grupos
de funciones (como comparar separadamente compor-
tamiento en problemas unimodales y multimodales).
Informes: Aparte de los informes disponibles para todos
los benchmark, un benchmark puede tener asociado al-
guno específico (en particular, en las competiciones de
alta dimensionalidad se usa un ranking específico, de la
F1). Se muestra, para cada benchmark, el conjunto de
posibles informes asociados.

IV. F RONTEND
Las Figuras 1, 2 y 3 resumen el flujo de trabajo más
completo de la aplicación. La primera información cuando
un usuario se conecta es un texto explicativo, donde se le Figura 2: Selección de los algoritmos. El usuario puede elegir
pide que seleccione el benchmark de su interés de una lista de la lista y/o subir un fichero con los suyos.
desplegable (Figura 1), obtenida de forma dinámica. Una vez
seleccionado el benchmark, la aplicación consulta al servidor
los valores de dimensión para que el usuario elija de forma
similar (si hubiese más de uno; si no, como en la Figura 1, se
selecciona automáticamente y se va al paso siguiente).

Figura 1: Selección del benchmark para la comparación. La


lista despleglable es dinámica.
Figura 3: Selección del informe de la comparación. La lista
Luego, se listan los algoritmos almacenados en la base de de informes disponibles depende del benchmark elegido.
datos asociados a ese benchmark (públicos o de ese usuario,
si está identificado), y para esa dimensión (ver Figura 2) y Por último, para lanzar el análisis basta con pulsar en el
los muestra con un checkbox para seleccionarlos. El usuario botón Compare. En las siguientes secciones detallamos los
puede seleccionar de la lista los que desea, y, opcionalmente, distintos tipos de informes soportados (hasta el momento), y
subir un fichero con la información de sus propios algoritmos ejemplos del tipo de análisis que la aplicación permite.
(TACO admite ficheros tanto en formato csv como xls) y
un nombre. Como cada benchmark podría tener un formato V. T IPOS DE INFORMES
diferente, encima del formulario para subir el fichero se El modelo de informes de TACO ha sido particularmente
muestra un enlace con un fichero Excel de ejemplo para el diseñado para ser flexible. Existen informes asociados a cada
benchmark seleccionado y se puede consultar una plantilla benchmark que pueden dividirse en las siguientes categorías:
para rellenar. Aunque el usuario puede indicar el nombre del Informes de propósito general, accesibles para todos lo
algoritmo en el formulario, también puede indicarlo en el benchmarks. Ejemplos de éstos serían tablas comparati-
fichero de entrada en su propia columna (o en varias hojas), vas de estadísticas comunes (media, ranking), gráficas de
lo cual permite enviar en un único fichero los resultados de convergencia, o algunas comparativas estadísticas.

729
XVIII Conferencia de la Asociación Española para la Inteligencia Artificial

Específicos para un benchmark, ya que algunos pueden


necesitar informes específicos (con medidas particulares).
Un ejemplo de esto, ya incluido, es el informe usado
en las competiciones de alta dimensionalidad (LSGO
competitions at IEEE CEC), que asigna a cada algoritmo
un número de puntos en función de su ranking, y se
suman para valorar la bondad de cada algoritmo. Este
informe es muy específico de esa comunidad de usuarios,
y tiene poco sentido que esté disponible para otros
benchmarks.
Esta primera versión de TACO incluye:
Tres informes de tipo general: Comparación de medias,
ranking medios, y gráficas de convergencia. Actualmente
se están desarrollando comparativas estadísticas que es-
peramos estén disponibles en el momento del congreso.
Un informe específico: El ya descrito usando el criterio
de la F1 para el CEC’2013 de alta dimensionalidad.
A continuación los describimos muy brevemente, mostrando
ejemplos reales usando las competiciones de optimización real
del CEC’2017 [4], y la competición de alta dimensionalidad
del CEC’2013 [5].

V-A. Informe comparativo de medias


Es el más sencillo. Computa la media de cada función y
algoritmo, y muestra las medias para cada hito en una tabla,
destacando la menor media, como se puede observar en la
Figura 4. Además de remarcar la mejor media, incluye una
línea resumen al final. Como toda tabla, los botones permiten
exportar los datos en Excel y en Latex. Adicionalmente, este Figura 4: Ejemplo de informe comparativo de medias para
informe genera un resumen de los distintos valores, en una CEC’2013.
tabla final como la reflejada en la Figura 5.

V-B. Informe de ranking


A veces los valores medios interesan menos que la posición
relativa de cada algoritmo. En este informe se orden para
cada función los algoritmos por su posición (1 al mejor, 2
al siguiente, y así sucesivamente), destacando el mejor, como
se puede observar en la Figura 6. Además de remarcar la mejor
media, incluye en la línea final el ranking medio por algoritmo,
y una tabla final con los ranking medios para cada hito.

V-C. Informe de gráficas de convergencia


En este informe se muestra la evolución del error medio Figura 5: Ejemplo de informe comparativo final de medias
para cada función y algoritmo en cada hito. La curva puede para CEC’2013.
ser más o menos suave, dependiendo del número de hitos
asociados al benchmark. La Figura 7 muestra un ejemplo
para el CEC’2013, donde sólo hay registrados tres hitos, y V-D. Informe F1 del benchmark CEC’2013
es más abrupta que en el caso de la Figura 8, correspondiente
al CEC’2017, con más hitos y, por tanto, más suave. En la Este informe es específico para el benchmark CEC’2013
Figura 8, se muestra claramente que LSHDE_SPACMA ofrece de alta dimensionalidad, y es un buen ejemplo de la flex-
una mejora suave pero continua, mientras que otros algoritmos ibilidad del framework. En esta competición, se ordena a
como RB-IPOP-CMA-ES convergen más rápidamente pero se los participantes según el sistema de puntos de la F1, en
estancan antes, confirmando lo indicado en la tabla de medias. el que cada corredor recibe un número de puntos según su

730
XIII Congreso Español en Metaheurı́sticas y Algoritmos Evolutivos y Bioinspirados

Function: 08
1.00e+3

1.00e+2

Mean Error
1.00e+1

1.00e+0

1.00e-1
1% 5% 10% 20% 30% 40% 50% 60% 70% 80% 90% 10…
Evaluations (%)

DYYPO LSHADE_SPACMA MM_OED


MOS PPSO RB-IPOP-CMA-ES
TLBO-FL jSO
Highcharts.com

Figura 8: Ejemplo de gráfica de convergencia para la función


8 del benchmark CEC’2017

gráfica por cada hito del benchmark. A su vez, la Figura 10


presenta una comparativa global (sumando los puntos de cada
hito). El color de cada componente de la figura representa el
subgrupo de funciones, de acuerdo a las características antes
mencionadas y, al pasar el ratón por cada componente, se
indica el valor exacto de puntos y el nombre de esa categoría.
De ambas figuras destaca que MOS [8] obtiene los mejores
resultados a partir de un número de evaluaciones, y práctica-
mente en todas las categorías.
Figura 6: Ejemplo de informe comparativo de rankings para
CEC’2013.
V-E. Inclusión de nuevos informes
Para permitir una mayor flexibilidad, cada informe es una
Function: 04 clase, que define un API de funciones que deben implemen-
1.00e+12
tarse. Estas funciones devolverán, por medio de una librería,
las tablas y figuras que se incorporarán al análisis. Por cada
1.00e+11 elemento (ya sea una tabla o una figura) el informe necesita
devolver una estructura con la siguiente información: el objeto
Mean Error

1.00e+10 a devolver; el tipo del objeto (tabla o figura); y el orden del


elemento, para permitir combinar tanto tablas como figuras de
1.00e+9
forma alternada dentro de un mismo informe.
Para generar las tablas, la aplicación utiliza dataframes de la
1.00e+8
librería pandas, considerada el estándar para cálculo científico.
1.20e+5 6.00e+5 3.00e+6 Para crear figuras, se ofrecen unas funciones propias que sirven
Evaluations
como capa de abstracción para generar fácilmente distintos
CC-CMA-ES DEEPSO MOS VMODE
Highcharts.com tipos de gráficas, tales como diagramas de barras, de líneas,
etc. El motivo de esta abstracción es simplificar el proceso,
Figura 7: Ejemplo de gráfica de convergencia para la función
y permitir a los informes ser independientes de las librerías
4 del benchmark CEC’2013
de visualización que hay por debajo, para poder cambiarlas,
llegado el caso, sin modificar los informes existentes.
Actualmente, se da soporte tanto a la librería Holoviews6 ,
posición final: 25 puntos para el ganador, 18 para el segundo, (librería de software libre para web, que presenta limitaciones
etc. Análogamente, el informe asigna a cada algoritmo los de funcionalidad y es lenta), como a la librería Highcharts7
puntos correspondientes a su posición para cada función. Los (más rápida y con mayor funcionalidad, pero que es comercial,
resultados son luego sumados para cada grupo de funciones aunque permite el uso gratuito si se usa sin fines comerciales).
(unimodales vs. multimodales, separables vs. no-separables,
etc.) o globalmente. La Figura 9 muestra los datos desglosados 6 http://holoviews.org

de acuerdo a la separabilidad de las funciones, con una 7 https://www.highcharts.com

731
XVIII Conferencia de la Asociación Española para la Inteligencia Artificial
Accuracy: 1.200e+05 Accuracy: 6.000e+05 Accuracy: 3.000e+06
30 30 30

25 25 25

20 20 20
Values

Values

Values
15 15 15

10 10 10

5 5 5

0 0 0
CC-CMA-ES DECC-G MOS VMODE CC-CMA-ES DECC-G MOS VMODE CC-CMA-ES DECC-G MOS VMODE
Algorithm Algorithm Algorithm
Highcharts.com Highcharts.com Highcharts.com

(a) 1.2E+5 FEs (b) 3.0E+5 FEs (c) 3.0E+6 FEs


Figura 9: Resultados para el criterio de la F1 para funciones no separables.

Accuracy: 1.200e+05 Accuracy: 6.000e+05 Accuracy: 3.000e+06


400 400 400

300 300 300


Values

Values

Values
200 200 200

100 100 100

0 0 0
CC-CMA-ES DECC-G MOS VMODE CC-CMA-ES DECC-G MOS VMODE CC-CMA-ES DECC-G MOS VMODE
Algorithm Algorithm Algorithm
Highcharts.com Highcharts.com Highcharts.com

(a) 1.2E+5 FEs (b) 3.0E+5 FEs (c) 3.0E+6 FEs


Figura 10: Resultados para el criterio de la F1 para todas las funciones.

En un futuro se plantea incorporar la librería Altair8 , muy AGRADECIMIENTOS


prometedora y que está actualmente en desarrollo. Este trabajo ha sido financiado, en parte, por ayudas del
Ministerio de Ciencia, Innovación y Universidades (TIN2014-
VI. C ONCLUSIONES 57481-C2-2-R, TIN2016-8113-R, TIN2017-83132-C2-2-R y
TIN2017-89517-P) y de la Junta de Andalucía (P12-TIC-
En este trabajo hemos presentado TACO, Toolkit for the 2958).
Automatic Comparison of Optimizers, una herramienta online
avanzada para la comparación de algoritmos. Como se ha dis- R EFERENCIAS
cutido, actualmente es capaz de manejar múltiples benchmarks [1] F. Glover and G. A. Kochenberger, Handbook of metaheuristics.
y su información asociada (número de funciones, distinto Springer, 2003.
[2] A. LaTorre, S. Muelas, and J. M. Peña, “A Comprehensive Comparison
número de dimensiones, hitos requeridos, grupos de funciones, of Large Scale Global Optimizers,” Information Sciences, vol. 316, pp.
etc). Además, para cada benchmark se pueden realizar, de 517–549, 2015.
forma automática, distintos tipos de análisis. La aplicación [3] J. A. Parejo, A. Ruiz-Cortés, S. Lozano, and P. Fernandez, “Metaheuristic
optimization frameworks: a survey and benchmarking,” Soft Computing,
fue concebida como soporte para competiciones, pero es de vol. 16, no. 3, pp. 527–561, 2012.
utilidad para todos los investigadores que necesiten comparar [4] N. H. Awad, M. Z. Ali, J. J. Liang, B. Y. Qu, and P. N. Suganthan,
sus propuestas, ya que los resultados son exportables para “Problem Definitions and Evaluation Criteria for the CEC 2017 Special
Session and Competition on Single Objective Real-Parameter Numerical
incluirlos en sus artículos y no requiere registro previo. Optimization,” Tech. Rep., Oct. 2016.
Aunque está suficientemente maduro y listo para ser usado [5] J. Liang, B.-Y. Qu, P. Suganthan, and A. Hernández-Díaz, “Problem
definitions and evaluation criteria for the cec 2013 special session and
en producción, existen planes para seguir extendiendo y mejo- competition on real-parameter optimization,” Computational Intelligence
rando TACO, que incluyen el aumento de la base de datos con Laboratory, Zhengzhou University, Zhengzhou China and Technical Re-
más benchmarks y algoritmos, la inclusión de más información port, Nanyang Technological University, Singapore, Tech. Rep., 2013.
[6] R. Biedrzycki, “A version of ipop-cma-es algorithm with midpoint for
sobre los algoritmos, nuevos tipos de informes, especialmente cec 2017 single objective bound constrained problems,” in 2017 IEEE
con tests estadísticos, la exportación global de todas las tablas Congress on Evolutionary Computation (CEC), June 2017, pp. 1489–
y figuras (actualmente, se deben exportar una a una), etc. 1494.
[7] N. Awad, M. Ali, and P. Suganthan, “Ensemble sinusoidal differential
Como puede verse, TACO es una herramiente potente y flex- covariance matrix adaptation with euclidean neighborhood for solving
ible para comparar distintos algoritmos. Es más, aunque está cec2017 benchmark problems,” in 2017 IEEE Congress on Evolutionary
enfocado a las metaheurísticas, puede usarse para comparar Computation (CEC), June 2017, pp. 372–379.
[8] A. LaTorre and J. M. Peña, “A comparison of three large-scale global
algoritmos de diferentes dominios (Machine Learning, etc.). optimizers on the cec 2017 single objective real parameter numerical
optimization benchmark,” in 2017 IEEE Congress on Evolutionary Com-
8 https://altair-viz.github.io putation (CEC), June 2017, pp. 1063–1070.

732
XIII Congreso Español en Metaheurı́sticas y Algoritmos Evolutivos y Bioinspirados

Creating Difficult Instances of


the Linear Ordering Problem
Aritz Pérez∗ and Josu Ceberio†
∗ Basque Center for Applied Mathematics (BCAM), 48009 Bilbao, Spain
† Faculty of Computer Science, 20018 Donostia, Spain

University of the Basque Country UPV/EHU


email: aperez@bcamath.org, josu.ceberio@ehu.eus

Abstract—Generating random instances of a given problem In [6], the authors focused on the random generation of
is a task that is addressed very frequently in combinatorial artificial instances of combinatorial optimization problems.
optimization. Some times this task is motivated by the lack of Particularly, they stated that most of the algorithms take only
challenging instances, some other times practitioners have few
instances and need to generate large benchmarks to evaluate into account the ordering of the solutions (better, worse...)
their algorithms. Be that as it may, creating instances that are during the optimization and, therefore, any instance can be
challenging enough for the algorithm at hand is not trivial, seen as a ranking of all the solutions in the search space.
and implies other considerations such as defining the concept In this context, the authors discovered that there exist classes
of difficulty. of equivalence of the mentioned rankings according to their
In this paper, we address the problem of randomly generating
difficult instances of the linear ordering problem for local search difficulty (in terms of number of local optima). Not limited to
algorithms. Based on the joint analysis of the problem and a that, conducted experiments demonstrated that when sampling
neighborhood structure, we conclude that one way to create independently and identically distributed (i.i.d.) parameters ac-
difficult instances is to organize its parameters in the way that cording to a uniform distribution, the majority of the instances
the variance of the fitness in the neighborhood is very low. induce rankings that belong to ”easy” classes of equivalence
To this end, we propose a simple procedure that generates the
parameters matrix in such a way that for any row and column, (have one or two local optima).
the sum of the parameters is constant. The experimental study On that research line, in [7] the authors tried to go deeper
shows that the proposed method generates instances of higher in the difficulty of instances for best improvement local search
difficulty than the standard method, setting the parameters algorithms when sampling the parameters u.a.r. Despite their
independently and identically distributed according to a uniform simplicity, local search algorithms permit easily tracking the
distribution.
optimization process and, thus, it is possible to carry out an
exact study of the difficulty of the instance on the basis of
I. I NTRODUCTION
fitness landscape analysis [8]. The work in [7] focused on
In the field of evolutionary computation, it is common to three problems and four neighborhood structures, and tried to
use benchmarks of instances of a given problem in order to answer the following question: are the artificially generated
evaluate the performance of existing and newly developed instances uniform in terms of difficulty? The experimental
algorithms. When the final goal is to solve a specific real-world study revealed that (1) by sampling the parameters uniformly
problem, real instances are used to carry out such comparisons, at random the obtained instances are non-uniform in terms of
and, thus, we are not interested in an extensive performance difficulty, (2) the distribution of the difficulty strongly depends
evaluation. However, when the objective of the research is on the pair problem-neighborhood considered, and (3) given
to contribute with methodological developments, then large a problem, the distribution of the difficulty seems to depend
benchmarks of instances are needed in order analyze the on the landscape induced by the neighborhood structure and
behavior of the proposed algorithm under different scenarios. its size.
In this sense, real-world benchmarks are usually limited in However, what creates the difficulty for a specific algorithm
size and variety of instances. in each problem is unique and it is not clear. In this work, we
At this point, it is a usual practice, based on the knowl- take as case of study the Linear Ordering Problem (LOP) [9],
edge of the problem (limited in most cases), to create new [10] and best improvement local search algorithm (BI) under
“challenging” instances artificially [1], [2], [3], [4], [5]. In this the insert neighborhood. In that context, we approach the
sense, a recurrent option is to generate instances by sampling problem of creating difficult instances.
their parameters uniformly at random (u.a.r) in some ranges. Firstly, we defined the difficulty of an instance as 1 minus
The underlying assumption states that sampling u.a.r in the the probability of reaching the global optimum solution after
space of parameters is equivalent to sampling u.a.r in the performing a BI starting from a random solution. Secondly,
space of instances and, thus, uniform in terms of difficulty. based on the joint study of the LOP and insert neighborhood,
Nonetheless, recent works on this line [6], [7] have shown we considered that one way to create difficult artificial in-
that such statement is not necessarily true. stances can be to sample a set of parameters that induces low

733
XVIII Conferencia de la Asociación Española para la Inteligencia Artificial

fitness variations in the neighborhood of a solution. for i, j = 1, ..., n are the parameters of the problem and,
On that line, we propose a procedure for generating artificial generally, bi,i = 0 for i = 1, ..., n. A particular assignment
instances by defining a parameters matrix of the instance in of values to these parameters constitutes an instance. Fig. 1
which every row and column sum a constant value. This type introduces an illustrative example of an LOP instance in its
of parameters matrix tends to induce low fitness differences triangulation form. Gray background parameters are the only
of the solutions in the insert neighborhoods.
In the experimental section, we generate thousands of 1 2 3 4 5

instances of the LOP for different sizes of the problem. The 1 0 16 11 15 7


instances have been generated by using i) the classical uniform
procedure, and ii) the proposed procedure. Then, we estimate 2 21 0 14 15 9

the difficulty of each instance generated for BI under the insert 3 26 23 0 26 12


neighborhood and we analyze the evolution of the difficulty of
the generated instances with respect to the size of the problem, 4 22 22 11 0 13

n. The results point out that the proposed procedure obtain 5 30 28 25 24 0


more difficult instances than the classical option.
The remainder of the paper is organized as follows: in
Section II the necessary background on combinatorial opti- Fig. 1: LOP instance of size n = 5.
mization, LOP, local search and difficulty is introduced. In
Section III, the main contribution of the paper, a method ones considered in the computation of the fitness function. The
to create difficult instances of the LOP for BI is proposed. search space of solutions Ω consist of all permutations of size
Afterwards, the experimental study is presented in Section IV. n, so its size is |Ω| = n!.
Finally, conclusions and research lines for future work are B. Local search on the LOP
summarized in Section V.
Local Search algorithms (LS) optimize based on a neigh-
II. BACKGROUND borhood system, a function that relates a set of solutions to
A combinatorial optimization problem (COP), denoted as each solution x ∈ Ω. Formally a neighborhood is defined as
P = (Ω, f ), consists of a finite (or infinite countable) domain N: Ω → 2|Ω|
of solutions Ω, also known as search space, and an objective
x 7→ N (x)
function f which is formalized as
where 2|Ω| represents the power set of the domain Ω.
f : Ω→R
LS is a sequential optimization heuristic that progresses
x 7→ f (x) by moving from a solution to a neighboring solution. Conse-
quently, the behavior of a particular LS is determined by the
We call to the value f (x) the fitness of x. The definition of a
neighborhood defined, and the criteria used to select a solution
problem includes certain inputs that are known as parameters.
from the neighborhood. Two of the most used strategies are
The collection of parameters that describe a particular case of
the best improvement (BI) and the first improvement selection
the problem is called the instance.
criteria. BI progresses by selecting, among the neighboring
The aim in a COP is to, given an instance, find x ∈ Ω such
solutions the solution with the best fitness, while the first im-
that f is maximized (or minimized). As the computation of
provement progresses by selecting a neighboring solution with
f (x) is closely tied to the instance, in the remainder of the
a better f (σ) value. Both algorithms are said to converge to
paper, we say that f is an instance or an objective function
a (local) optimum solution when all the neighboring solutions
indistinctly. The LOP is an example of a COP. In the following,
have equal or worse f (σ) value.
a brief introduction to it is presented.
In local search optimization, a wide range of neighborhood
A. The Linear Ordering Problem structures have been proposed in order to deal with combinato-
Given a matrix B = [bi,j ]n×n of numerical entries, the rial problems. Depending on the characteristics of the problem,
LOP [9], [10] consists of finding a simultaneous permutation some neighborhoods show better performance than others [11].
σ of the rows and columns of B, such that the sum of the According to [7], the insert neighborhood is the structure that
entries above the main diagonal is maximized (or equivalently, most favorable landscapes generates for the LOP. From our
the sum of the entries below the main diagonal is minimized). perspective, this is probably motivated by its considerable
The equation below formalizes the objective function: size and the few number of parameters exchanged between
neighboring solutions.
X
n−1 X
n
Let us now consider a permutation σ of size n. The insert
f (σ) = bσi ,σj (1) neighborhood considers as neighbors all the solutions that can
i=1 j=i+1
be obtained by moving any item from a position i to any
where σi denotes the index of the row (and column) ranked position j. The items between positions i and j are shifted.
at position i in the solution σ. The numerical entries bi,j As a result, the size of the neighborhood is (n − 1)2 .

734
XIII Congreso Español en Metaheurı́sticas y Algoritmos Evolutivos y Bioinspirados

Fig. 2 presents an example of an LOP instance for two decision to move to this solution by the BI tends to increase
different solutions: e and σ. The second solution is obtained the chance to reach to the global optimum. In this scenario,
by performing an insert movement of item 2 to position 3. we say that the decision is supported with strong evidence and
In both cases, the pairs of parameters associated to item 2 the neighborhood becomes more informative. In this sense, in
are circled. As can be seen in the figure, due to the insert the next section, we propose a method to generate artificial
instances in which the solutions in the neighborhood have
small differences in the fitness.
1 2 3 4 5 1 3 2 4 5

0 16 11 15 7 0 11 16 15 7
1 1
III. C REATING D IFFICULT I NSTANCES OF THE LOP
2 21 0 14 15 9 3 26 0 23 26 12
Usually, in the literature, in order to generate artificial
3 26 23 0 26 12 2 21 14 0 15 9 instances of LOP the parameters are sampled according to
4 22 22 11 0 13 4 22 11 22 0 13
a uniform distribution [7]. Using this procedure it is possible
to generate an instance B with unbalanced sums by rows and
5 30 28 25 24 0 5 30 25 28 24 0
by columns which can be easily exploited by heuristic opti-
mization algorithms, such as BI under the insert neighborhood.
(a) e = (1, 2, 3, 4, 5), f (e) = 138. (b) σ = (1, 3, 2, 4, 5), f (σ) = 147. Nonethelss, if we generate instances in which the independent
sum of rows and columns are equally weighted, then the insert
Fig. 2: Two different solutions for an instance of n = 5. neighborhood tends to provide similar fitness variations in the
Circled values denote the parameters associated to item 2. neighborhood of a solution, and it becomes less informative
(see Figure 3).
movement, a pair of parameters, (14, 23) is swapped from In this work, with the aim of generating more difficult
side, and thus, f (σ) increases from 138 to 147. Note that instances than the uniform approach, we propose a method
the rest of the parameters, despite they are reallocated, they that produces a matrix B for which the sum of each row
remain in the same side with respect to the main diagonal. In and each column sum 1. Specifically, the scheme proceeds
general, if we insert the i-th element in the j-th position we as follows. First, two matrices R and C are created. In R,
swap |i − j| parameters [7]. The general effect of an insert the rows of parameters are obtained by sampling a Dirichlet
operation is illustrated in Figure 3. distribution. Similarly, in C, the sampled vectors correspond to
columns in the matrix. Next, once R and C are obtained, the
randomly generated instance is given as B = 1/2 · (R + C).
Finally, following the next iterative normalization procedure
we obtain a matrix B for which any row or column sum one.
The procedure works as follows, first, the parameters of every
row are normalized independently in order to sum 1. Next, the
same normalization process is applied to the columns. Both
steps are subsequently repeated until result converges to the
matrix with the characteristics above.
Note that in LOP, bi,i = 0 for i = 1, .., n. Thus the diagonal
of R and C have to be zero and, thus, we sample a Dirichlet
Fig. 3: The parameters swapped by insert i-th element in posi- distribution with n − 1 parameters for each row and column of
tion j. Green lines and red lines represent the parameters that R and C, respectively. In this work, the parameters are equal
are added and subtracted to the objective function, respectively to one, that is α = αi = for i = 1, ..., n − 1.

IV. E XPERIMENTAL S TUDY


C. Measuring the Difficulty In this section, we artificially generate LOP instances fol-
As proposed in [7], we consider the difficulty of an instance lowing two different schemes, and, we analyze the generated
of the LOP as 1 minus the probability of reaching the global instances in terms of the distribution of the difficulty.
optimum solution by using BI and by picking a solution of Ω For this purpose, we have artificially generated 104 in-
at random. In other words, the difficulty is 1 minus the size stances of the LOP for each problem size n = 8, ..., 20. The
of the basin of attraction of the global optimum divided by parameters of the instances have been sampled by using i)
the size of the search space, n!. In this work, we estimate the the classic uniform procedure in the [0, 1] interval and ii) the
difficulty of an instance by running 100 times BI initialized proposed Dirichlet procedure with α = 1. Next, we have
with a random solution. The difficulty is estimated as 1 minus obtained the global optimum of each instance by solving it
the percentage that BI have reached the global optimum. using the branch and bound algorithm proposed by Charon et
It is our intuition that if exists a solution in the neighbor- al. [12]. Finally, for each instance generated we have run a
hood whose fitness is quantitatively larger than the rest, then BI under the insert neighborhood 100 times, and estimated its

735
XVIII Conferencia de la Asociación Española para la Inteligencia Artificial

Fig. 4: The evolution of the average difficulty (together with the first and third quartiles) for the uniform and the Dirichlet
with respect to the size of the problem n = 6, ..., 20.

difficulty by counting the percentage of times it reaches the However, there are a number of questions still pending. For
global optimum. instance, results in Fig. 5 show small peaks in the distribution
We have analyzed the evolution of the distribution of the of the difficulty, that are consistently repeated for the two
difficulty with respect to the size of the LOP, n. The results are instance generation methods across the different n values. The
summarized in Figs. 4 and 5. The first illustrates the evolution answer should be in the definition of the problem and the
of the average difficulty (and the first and third quartiles) for structure of the neighborhood.
the compared schemes for the different n values. Figure 5 In addition, we aim to study the effect of the α parameters
provides a more detailed view of the results showing the of the Dirichlet procedure in the distribution of the difficulty.
distribution of the difficulty. It is our intuition that α parameter could be used in order to
Results reveal that, as n increases, instances tend to be further increase the difficulty of the generated instances.
more difficult using both procedures. In addition, we see Finally, we find interesting to extend this work to
that the instances generated by the Dirichlet procedure are other problem-neighborhood pairs. For instance, for the pair
more difficult. The dispersion of the generated difficulties Quadratic Assignment Problem (QAP) and interchange neigh-
using the Dirichlet procedure is smaller than the obtained by borhood [11], [13], it is very probable that the same prin-
the uniform procedure, especially for the largest instances. ciple of low variance fitness neighbors will produce difficult
Moreover, as n increases the third quartile of the difficulty instances. Nevertheless, the manner in which the instances are
for the Dirichlet procedure is higher than the fist quartile of generated for QAP is apparently much more complex as it
the uniform procedure. doubles the number of parameters of the LOP. Not limiting
V. C ONCLUSION & F UTURE W ORK to the domain of local search algorithms, it is possible to
extend the work to other algorithms, as the principle of low
In this work, we have addressed the problem of generating variance fitness instances may produce difficult scenarios for
difficult instances of the linear ordering problem for the population-based algorithms as well.
best improvement local search under the insert neighborhood.
Based on the joint analysis of the LOP instances and the insert
neighborhood structure, we concluded that a possible manner ACKNOWLEDGMENT
is to organize its parameters in such a way that the variance
of the fitness in the neighborhood is very low. To this end, This work has been partially supported by the Re-
we propose a procedure for generating artificial instances as search Groups 2013-2018 (IT-609-13), BERC 2014-2017, and
a matrix of parameters in which the sum of each row and ELKARTEK programs (Basque Government), the projects
each column is constant. Conducted experiments show that TIN2016-78365-R and TIN2017-82626-R (Spanish Ministry
the proposed method tends to generate instances of higher of Economy, Industry and Competitiveness) and Severo Ochoa
difficulty than other standard methods such as setting the Program SEV-2013-0323 (Spanish Ministry of Economy, In-
parameters i.i.d. according to a uniform distribution. dustry and Competitiveness).

736
XIII Congreso Español en Metaheurı́sticas y Algoritmos Evolutivos y Bioinspirados

Fig. 5: The distribution of the difficulty of the instances generated by using the uniform and Dirichlet procedures for different
problem sizes, n = 8, 11, 14, 17, 20. The x axis is the difficulty and the y axis the frequency in which instances of a given
difficulty are generated. Each point corresponds to a difficulty and its area is proportional to the number of instances generated
with this difficulty.

737
XVIII Conferencia de la Asociación Española para la Inteligencia Artificial

R EFERENCES [8] M. Tayarani-N. and A. Prgel-Bennett, “On the landscape of combi-


natorial optimization problems,” IEEE Transactions on Evolutionary
[1] I. P. Gent and T. Walsh, “The TSP phase transition,” Artificial Intelli- Computation, vol. 18, no. 3, pp. 420–434, June 2014.
gence, vol. 88, no. 1–2, pp. 349 – 358, 1996.
[2] E. Taillard, “Benchmarks for basic scheduling problems,” European [9] R. Martı́ and G. Reinelt, The linear ordering problem: exact and
Journal of Operational Research, vol. 64, no. 2, 1993. heuristic methods in combinatorial optimization. Springer, 2011, vol.
[3] Z. Drezner, P. Hahn, and É. Taillard, “Recent advances for the quadratic 175.
assignment problem with special emphasis on instances that are difficult [10] J. Ceberio, A. Mendiburu, and J. A. Lozano, “The Linear Ordering
for meta-heuristic methods,” Annals of Operations Research, vol. 139, Problem Revisited,” European Journal of Operational Research, vol.
no. 1, pp. 65–94, 2005. 241, no. 3, pp. 686–696, 2014.
[4] T. Schiavinotto and T. Stützle, “The linear ordering problem: Instances, [11] J. Ceberio, E. Irurozki, A. Mendiburu, and J. A. Lozano, “A review
search space analysis and algorithms,” Journal of Mathematical Mod- of distances for the mallows and generalized mallows estimation of
elling and Algorithms, vol. 3, no. 4, pp. 367–402, 2005. distribution algorithms,” Computational Optimization and Applications,
[5] A. Duarte, M. Laguna, and R. Martı́, “Tabu search for the linear vol. 62, no. 2, pp. 545–564, 2015.
ordering problem with cumulative costs,” Computational Optimization
and Applications, vol. 48, no. 3, pp. 697–715, 2011. [12] I. Charon and O. Hudry, “A branch-and-bound algorithm to solve the
[6] J. Ceberio, A. Mendiburu, and J. A. Lozano, “Are we generating in- linear ordering problem for weighted tournaments,” Discrete Applied
stances uniformly at random?” in 2017 IEEE Congress on Evolutionary Mathematics, vol. 154, no. 15, pp. 2097 – 2116, 2006.
Computation (CEC). IEEE, 2017, pp. 1645–1651. [13] J. Ceberio, A. Mendiburu, and J. A. Lozano, “Kernels of mallows
[7] A. Perez, J. Ceberio, , and J. A. Lozano, “Are the artificially generated models for solving permutation-based problems,” in Proceedings of the
instances uniform in terms of difficulty?” in 2018 IEEE Congress on 2015 Annual Conference on Genetic and Evolutionary Computation, ser.
Evolutionary Computation (CEC). IEEE, 2018. GECCO ’15. ACM, 2015, pp. 505–512.

738
XIII Congreso Español en Metaheurı́sticas y Algoritmos Evolutivos y Bioinspirados

Anatomy of the Attraction Basins:


Breaking with the Intuition
Leticia Hernando∗ , Alexander Mendiburu† , Jose A. Lozano∗‡
∗ Intelligent Systems Group, Department of Computer Science and Artificial Intelligence
University of the Basque Country UPV/EHU, 20018 San Sebastián, Spain
leticia.hernando@ehu.eus
† Intelligent Systems Group, Department of Computer Architecture and Technology

University of the Basque Country UPV/EHU, 20018 San Sebastián, Spain


alexander.mendiburu@ehu.eus
‡ Basque Center for Applied Mathematics (BCAM)

48009 Bilbao, Spain


ja.lozano@ehu.eus

Abstract—This is a summary of the motivations, contributions, following options: (i) be a strict local optimum, (ii) belong to a
experiments and conclusions of the article titled Anatomy of the local optimal plateau, or (iii) belong to an open plateau. Thus,
Attraction Basins: Breaking with the Intuition that has been we show the number of strict local optima, the number of
accepted for publication in Evolutionary Computation journal
(doi: 10.1162/EVCO a 00227) [1]. local optimal plateaus and the number of open plateaus that
appear in the instances chosen for the analysis. In general,
I. I NTRODUCTION for the three analyzed problems, the presence of plateaus is
Solving combinatorial optimization problems efficiently re- remarkable. One of the main conclusions derived from this
quires the development of algorithms that consider the spe- study is that, usually, the algorithm gets trapped inside the
cific properties of the problems. In this sense, local search plateaus. That is, although we find instances with plateaus
algorithms are designed over a neighborhood structure that composed by just two solutions, this algorithm is not designed
partially accounts for these properties. Considering a neighbor- to detect and escape from them.
hood, the space is usually interpreted as a natural landscape,
with valleys and mountains. Under this perception, it is com- B. Roundness of the attraction basins
monly believed that, if maximizing, the solutions located in
An attraction basin is considered to be round if all the
the slopes of the same mountain belong to the same attraction
solutions at distance 1, 2, ... until a certain distance r from the
basin, with the peaks of the mountains being the local optima.
local optimum or the plateau are within the attraction basin.
Unfortunately, this is a widespread erroneous visualization of a
We record, for the smaller instances, for each local optimum,
combinatorial landscape. Thus, our aim is to clarify this aspect,
the proportion of solutions belonging to its attraction basin
providing a detailed analysis of, first, the existence of plateaus
that are at different distances from it. On average, the local
where the local optima are involved, and second, the properties
optima are located in the frontier of the attraction basins, as
that define the topology of the attraction basins, picturing a
they have a number of neighboring solutions belonging to a
reliable visualization of the landscapes. Some of the features
different attraction basin. However, on average, we also find
explored in this paper have never been examined before.
solutions at the longest distances from them that do belong to
Hence, new findings about the structure of the attraction basins
their attraction basins. This structure clearly differs from the
are shown. The study is focused on instances of permutation-
concept of roundness.
based combinatorial optimization problems considering the 2-
exchange and the insert neighborhoods. Particularly, we work
C. Centrality of the local optima
with the permutation flowshop scheduling problem (PFSP), the
linear ordering problem (LOP) and the quadratic assignment We aim to study the position of the local optima within the
problem (QAP). As a consequence of this work, we break attraction basins. We focus on the centrality of the local optima
away from the extended belief about the anatomy of attraction inside the attraction basins. The local optima (or the plateaus)
basins. are considered to be centered if they minimize the average
distance to the rest of the solutions in the attraction basin.
II. A NALYSIS OF THE TOPOLOGY OF THE ATTRACTION
We observe that, in general, the local optima of the instances
BASINS
have a lower average distance than the rest of the solutions
A. Local optima and local optimal plateaus of the attraction basins. We conclude that the local optima are
A best-improvement local search algorithm returns a local located close to the barycenter of the attraction basins, as they
optimum that necessarily match one, and only one, of the three have the minimal (or almost the minimal) average distances to

739
XVIII Conferencia de la Asociación Española para la Inteligencia Artificial

the rest of the solutions: in general, they are almost centered ●●


● ● ● ● ●

within the attraction basins.


● ●
● ●●

● ●
● ●
● ● ●

●● ● ● ● ●
● ● ●● ● ● ●
● ● ● ●● ● ●● ● ●● ● ●
● ● ●● ●
● ●
●● ● ● ●
D. Interior and frontier of the attraction basins ● ●

● ●●

●●


●● ● ●
● ●

●●

●●●
● ●● ●●●●●●● ●● ● ●●
●● ●● ●● ● ● ●


There is a really low number of solutions in the interior ●

●●


●●
● ●


●●
● ● ●

● ●
●●
● ●
● ● ● ● ●● ●


● ●

●●

●●

● ● ●● ● ● ● ● ● ●
● ●● ● ●
of the attraction basins. Surprisingly, the average number ●

● ●





● ● ●
● ● ●
● ● ●

● ●●●●●

● ●●
● ● ●●
●● ● ●
● ●● ● ●

● ●●
● ●● ● ●



●●
●●



● ● ● ● ● ●● ● ● ●

of neighboring attraction basins is really high (close to the ●


●●
●●



● ●

●●
●● ●
●● ● ● ●
● ●

● ●● ● ● ●●
●● ● ● ● ●●● ● ● ●

total number of local optima). Basically, almost all of the



●●● ● ●
●● ● ●
●● ●● ●
●● ●● ● ● ●● ●
●● ●
● ● ● ●● ● ● ● ●

● ●● ● ● ● ● ● ● ●

attraction basins are neighboring attraction basins. Moreover,



● ● ● ●
●● ● ● ● ●
● ● ● ● ● ● ●

●● ●
● ● ●

● ●● ● ● ●● ● ● ● ● ● ● ● ●

● ● ●● ● ● ●
● ●

those solutions that are close to the local optimum have a ●● ● ●


● ● ●

● ●
● ●


●● ●

● ● ●
● ●

large proportion of their neighbors inside the same attraction


● ●
● ● ● ●
● ● ●

basin. The solutions that are far from the local optimum have

a small number of neighbors in the same attraction basin, (a)


while the number of different neighboring attraction basins ●
● ●

●●● ●

is large. If we take all the solutions of an attraction basin, the ●


●●
●●●
●●●●
● ●



●●●●

● ● ●●●

connectivities with other different attraction basins are higher ●●● ●




●● ●
● ●
● ●

● ●● ●
● ●
●● ● ● ●
●●
●●●●


● ●●
● ● ● ●● ●
for those solutions at long distances from the local optima. ●


●●
●● ●
● ●
● ●●

●●




●●


●●
●●

●●

● ●
●●

●●



●●●
●●
● ●● ●

●●
● ●
●●● ● ●


●●
●● ●●
●●
● ●

● ●


●●●
The attraction basins are intertwined in the search space: the ●
● ●

●● ● ●● ●


● ● ●
●●●

● ● ●
● ● ●
●●


● ●
●●●●
●● ● ●
●● ● ●●
paths drawn by the local search algorithm are interconnected ●
● ●●
● ●●
● ●

●●●●● ● ●●●●
●●
●●







● ●
●●●
●●


● ●● ●●●●●
●● ● ●

●●●
● ●● ●
● ●

●●●
●●●
● ●
●●●
● ● ● ●●● ● ●
● ●
●●●

with each other or, at least, they are close to each other. ●


● ●
●●
● ●●

●● ●
●●


● ●●●
●●
●●

●●●

●●

●●●●
●●●

●●




● ●
●●●

● ●●
● ●●

● ● ● ● ● ●

III. V ISUALIZATION OF THE ATTRACTION BASINS ●




●●
● ●

●●

We give a representation of a specific attraction basin by ●

means of a network showing all the paths encountered until the


local optimum is reached. Each node of the graph represents ●

one solution belonging to the attraction basin. Edges between (b)


nodes indicate that the node at the end of the edge is the
Fig. 1. Visualization of an attraction basin of a local optimal plateau found
best neighbor of the node at the start of the edge. The color an instance of the PFSP with the 2-exchange neighborhood, considering only
of the nodes changes with the distance to the local optimum. the steps of the algorithm (a) and taking into account, as far as possible, the
Particularly, red, yellow, green, light blue, dark blue and purple distances between all the solutions (b).
are used to represent the solutions at distances 0 (the local
optima), 1, 2, 3, 4 and 5, respectively. The size of the nodes the same objective function value, forming a plateau. The
and the width of the edges also decrease as the distance to the local optima or the plateaus composed by local optima are
local optimum increases. centered in the attraction basin. Nevertheless, we should be
Figure 1 presents two different graphs illustrating the same cautious with this perception, because by understanding the
attraction basin of a local optimal plateau of a PFSP instance combinatorial optimization landscapes as if we were in a
when using the 2-exchange neighborhood. Figure 1(a) repre- 3D natural landscape, we could be misunderstanding the real
sents this attraction basin considering the steps that the algo- anatomy. The understanding of the landscapes in combinatorial
rithm takes until it reaches the local optimal plateau (and not optimization has been one of the main challenges when
the distances between the solutions). In an attempt to visualize developing and improving algorithms. This work not only
this attraction basin in a more realistic way, we force the graph breaks with an erroneous extended belief about the attraction
to take into account the distances between all the solutions that basin shapes, but also provides valuable information for the
belong to the attraction basin (Figure 1(b)). The real structure design of new algorithms based on local search.
of the attraction basins is more complex than one could try
ACKNOWLEDGMENT
to imagine. More visualizations can be found at the website:
http://www.sc.ehu.es/ccwbayes/members/leticia/AnatomyOfAB/visualization/ This work has been partially supported by the Research
visualizeOneAB.html. Groups 2013-2018 (IT-609-13) programs (Basque Govern-
ment) and TIN2016-78365R (Spanish Ministry of Economy,
IV. C ONCLUSION Industry and Competitiveness). Jose A. Lozano is also sup-
The attraction basins can be understood as long intertwined ported by BERC 2014-2017 and Elkartek programs (Basque
rivers, that flow into the different local optima, instead of government) and Severo Ochoa Program SEV-2013-0323
being mountains in a landscape. In fact, each attraction basin (Spanish Ministry of Economy and Competitiveness).
is composed of several of those rivers ending at the same R EFERENCES
local optimum, while at the same time, each of them could [1] L. Hernando, A. Mendiburu and J.A. Lozano. Anatomy of the Attraction
have different tributaries. Moreover, the end of those rivers Basins: Breaking with the Intuition. Evolutionary Computation, 1-32.
can be made up of more than one local optimum that have 2018. In Press.

740
XIII Congreso Español en Metaheurı́sticas y Algoritmos Evolutivos y Bioinspirados

SHADE con Búsqueda Local Iterativa para


Optimización Global de Alta Dimensionalidad
1o Daniel Molina 2o Antonio LaTorre 3o Francisco Herrera
DaSCI Instituto Andaluz en Data Science DATSI, ETSIINF DaSCI Instituto Andaluz en Data Science
and Computational Intelligence Centro de Simulación Computacional and Computational Intelligence
Universidad de Granada Universidad Politécnica de Madrid Universidad de Granada
Granada, España Madrid, España Granada, España
dmolina@decsai.ugr.es atorre@fi.upm.es herrera@decsai.ugr.es

Resumen—La optimización global es un campo de investi- estar por encima del millar de variables. En este contexto,
gación de gran interés dado el gran número de problemas de la eficiencia de las técnicas de búsqueda es crucial, debido al
la ciencia y la ingeniería que pueden formularse en dichos enorme espacio de búsqueda que debe cubrirse. En los últimos
términos. Uno de los grandes retos en este tipo de problemas
es el incremento de la dimensionalidad, ya que supone un años, se han organizado varias sesiones especiales en LSGO
aumento en la complejidad de los mismos. Este hecho hace donde se han propuesto varios algoritmos específicamente
de la optimización global de alta dimensionalidad un campo diseñados para este tipo de problemas. Una de las estrategias
especialmente atractivo en nuestros días. En esta contribución que está recibiendo más atención consiste en particionar el
proponemos un nuevo algoritmo híbrido especialmente diseñado problema en subproblemas de menor tamaño. Un ejemplo
para tratar con este tipo de problemas. La propuesta combina,
de manera iterativa, una reciente variante del algoritmo de de esto son las diferentes estrategias de agrupamiento de
Evolución Diferencial con una búsqueda local que se escoge de variables propuestas por algunos autores [4], [5]. No obstante,
entre varias estrategias disponibles. Dicha selección es dinámica la actual referencia, y ganador de las competiciones de alta
y se lleva a cabo teniendo en cuenta la contribución de cada dimensionalidad desde 2013, Multiple Offspring Sampling,
una de ellas en las anteriores fases de intensificación, de tal MOS [6], [7], sigue una aproximación diferente: combina
modo que se use la más apropiada en cada una de las fases de
búsqueda del algoritmo. La experimentación se ha llevado a cabo dinámicamente múltiples técnicas de búsqueda que se usan
usando el benchmark de alta dimensionalidad del CEC’2013 y los de manera simultánea y cuya participación en el proceso de
resultados demuestran que la sinergia existente entre las distintas búsqueda se ajusta de acuerdo a su rendimiento.
componentes del algoritmo permite obtener unos resultados que En esta contribución proponemos un nuevo algoritmo,
mejoran los del actual ganador de las últimas competiciones de SHADE con una búsqueda local iterativa, SHADE-ILS, que
optimización global de alta dimensionalidad, Multiple Offsrping
Sampling, MOS, con mejoras especialmente reseñables en los combina la capacidad exploratoria de una reciente variante de
problemas de mayor complejidad. la ED con la potencia de intensificación de varias Búsquedas
Index Terms—Optimización Global de Alta Dimensionalidad, Locales, BL. En cada iteración del algoritmo, la ED se aplica
Evolución Diferencial, Computación Memética, Hibridación. para evolucionar la población de soluciones candidatas y la
BL se usa para mejorar la mejor solución encontrada hasta ese
I. I NTRODUCCIÓN momento. Las técnicas de BL se seleccionan en cada iteración
La optimización continua es un campo de investigación de acuerdo al rendimiento relativo obtenido previamente.
muy relevante ya que muchos problemas de diversas áreas Este algoritmo se basa en el que se propuso en [8], IHDELS,
de conocimiento pueden formularse en estos términos. En pero con un importante número de diferencias: la selección
este tipo de problemas, la solución puede modelarse como de la BL a aplicar en cada generación se ha mejorado.
un vector de una determinada longitud de variables continuas Además, se ha introducido un mecanismo de reinicio capaz
en un dominio de búsqueda. Los Algoritmos Evolutivos, AEs, de detectar el estancamiento. Por último, en esta propuesta
tales como la Evolución Diferencial, ED [1], [2], son muy se ha reemplazado la ED utilizada anteriormente, SaDE [9],
útiles en la resolución de este tipo de problemas, ya que por otra más potente, Success-History based Adaptive DE,
son capaces de encontrar soluciones precisas a problemas SHADE [10].
complejos sin ninguna información acerca de estos, lo cual es Los resultados de este nuevo método se han comparado con
de gran utilidad en problemas reales [3]. Sin embargo, este tipo los de IHDELS, mejorando los que éste obtenía. Además,
de algoritmos suele ser muy sensible al tamaño del problema, SHADE-ILS mejora los resultados del ganador de las ante-
dado que el dominio de búsqueda aumenta exponencialmente riores competiciones de alta dimensionalidad, MOS [6], [7]
con el número de dimensiones. que, no había sido mejorado desde su publicación, lo cual
La Optimización Global de Alta Dimensionalidad, LSGO lo convertía en el actual estado del arte. De esta manera, el
por sus siglas en inglés, es una variante concreta de este algoritmo propuesto, SHADE-ILS, puede ser considerado el
tipo de problemas en la que el tamaño del mismo suele nuevo estado del arte en optimización continua.

741
XVIII Conferencia de la Asociación Española para la Inteligencia Artificial

El resto del documento está organizado del siguiente modo: aproximación del gradiente para mejorar la búsqueda.
en la sección II, el algoritmo SHADE-ILS se describe en Ambos métodos son complementarios: MTS LS-1 es
detalle, resaltando las principales diferencias con respecto muy rápido y apropiado para problemas separables, pero
a IHDELS. En la sección III, analizamos los resultados muy sensible a rotaciones. Por otro lado, L-BFGS-B es
obtenidos por nuestro algoritmo y los comparamos con los menos potente pero también menos sensible a estas.
de MOS. Por último, la sección IV presenta las principales Este framework, presentado en el algoritmo 1, es común a la
conclusiones y líneas futuras del trabajo. anterior propuesta [8]. Sin embargo, como mencionamos antes,
II. P ROPUESTA existen tres diferencias principales entre ambas propuestas: el
algoritmo de ED utilizado (SHADE en lugar de SaDE) (línea
En esta sección vamos a describir en detalle el algoritmo
6), la selección de la BL (líneas 9 y 11) y el mecanismo
propuesto, SHADE-ILS, resaltando los cambios realizados con
de reinicio (líneas 15-17). En los párrafos siguientes vamos a
respecto a IHDELS. Una descripción detallada de este último
detallar las principales características de la nueva propuesta.
puede ser consultada en [8].
II-A. Algoritmo exploratorio: SHADE
Algoritmo 1 SHADE-ILS
En este trabajo, aplicamos SHADE como el componente
1: population ← random(dim, popsize) exploratorio. Este algoritmo presenta las siguientes ventajas:
2: solucion_inicial ← (upper + lower)/2 Tiene un mecanismo de auto-ajuste de los parámetros de
3: actual_mejor ← BL(solucion_inicial) la ED, CR (parámetro del cruce) y F (parámetro de la
4: mejor_solucion ← actual_mejor mutación), sofisticado, que permite un ajuste óptimo a
5: while totalevals < maxevals do
cada problema. El único parámetro que hay que fijar es
6: previo ← actual_mejor.f itness el tamaño de población.
7: actual_mejor ← SHADE(population, actual_mejor) El operador de mutación tiene en cuenta soluciones
8: improvement ← previo − actual_mejor.f itness. anteriores almacenadas en un archivo, lo cual incrementa
9: Escoge el método de BL a aplicar en esta iteración. la diversidad de las nuevas soluciones.
10: actual_mejor ← BL(population, actual_mejor) El operador de mutación está sesgado para no seleccionar
11: Actualiza probabilidad de aplicar BL. siempre la mejor solución. En su lugar, selecciona aleato-
12: if mejor(actual_mejor, mejor_solucion) then riamente de entre las p mejores soluciones.
13: actual_mejor ← mejor_solucion.
Una descripción más detallada del algoritmo SHADE se
14: end if
puede encontrar en [10].
15: if Debe reiniciar then
En algunas versiones más recientes de SHADE, algunos
16: Reinicia y actualiza actual_mejor.
autores incorporan una reducción lineal del tamaño de la
17: end if
población al considerar que es demasiado exploratorio [11],
18: end while
[14]. Sin embargo, en nuestro caso, es ésta precisamente la
característica que más nos interesa, ya que disponemos de
El algoritmo 1 muestra el esquema general de la propuesta.
otros métodos de intensificación, por lo que no necesitamos
Como se puede observar, el algoritmo aplica, iterativamente,
aplicar la reducción del tamaño de la población. Es más,
los métodos de ED y BL, explorando todas las variables al
habiendo probado ambas versiones, los mejores resultados los
mismo tiempo (una diferencia importante con respecto a otros
hemos obtenidos con SHADE.
algoritmos que agrupan variables). Otra característica relevante
es que el algoritmo mantiene la misma población entre fases II-B. Selección de la BL
de aplicación de la ED. Además, los parámetros del método de En IHDELS, la selección de la BL en cada iteración se
BL también son persistentes entre llamadas sucesivas sobre la llevaba a cabo con una determinada probabilidad (línea 9)
misma solución (exceptuando tras los reinicios). Por lo tanto, P . Este valor se inicializaba como P
LS = |LS| , donde
1
LS
el flujo del algoritmo podría resumirse en dos pasos:
|LS| es el número de métodos de BL (2 en nuestro caso)
Inicialmente, se usa una técnica exploratoria para ex- disponibles. Además, en cada iteración (línea 11) la mejora
plorar el espacio de búsqueda. En nuestro caso, hemos de cada método de BL se calculaba como:
seleccionado SHADE [10] por su simplicidad y porque
auto-ajusta sus parámetros. Existe una versión que reduce
f itness(Bef oreLS ) − f itness(Af terLS )
el tamaño de la población, L-SHADE [11], muy popular ILS = (1)
en el campo de la optimización continua. Sin embargo, en Bef oreLS
este caso, el ajuste del tamaño de la población reduciría A continuación, la probabilidad de seleccionar cada BL
demasiado rápidamente sus capacidades de exploración. se ajustaba según el valor media de ILS obtenido por cada
Al final de cada iteración, se escoge una BL, de entre dos método de BL.
métodos, para la fase de intensificación. Una de ellas es el En SHADE-ILS, la mejora de cada método de BL se calcula
algoritmo MTS LS-1 [12], específicamente diseñado para del mismo modo (ecuación 1). Sin embargo, en lugar de usar
LSGO. La otra es el clásico L-BFGS-B [13], que usa una el ILS medio para cada BL, selecciona la BL con mayor ILS

742
XIII Congreso Español en Metaheurı́sticas y Algoritmos Evolutivos y Bioinspirados

durante la última aplicación. Este criterio es más simple y, separables a completamente no-separables. La descripción
en nuestros experimentos, más eficiente que el anterior. No detallada del benchmark puede encontrarse en [15].
sólo eso: cuando el rendimiento de un método de BL decrece La implementación del algoritmo se ha realizado en Python,
rápidamente, el uso del ILS medio requiere de más tiempo y está libremente disponible1 . Cada algoritmo se ha eje-
para detectar este cambio, mientras que el uso del ILS de la cutado 51 veces, y cada ejecución finaliza cuando se al-
anterior ejecución proporciona una adaptación más rápida. canza un número máximo de evaluaciones de fitness, FEs
por sus siglas en inglés, que se fija en 3 · 106 . Además,
II-C. Mecanismo de reinicio se registra el mejor fitness en distintos puntos de control
En ocasiones, un proceso de optimización puede estancarse. (en términos de FEs, que son, en este caso, los siguientes:
En esas situaciones, una solución muy común consiste en {1,2, 3,0, 6,0, 9,0, 12, 15, 18, 21, 24, 27, 30}·105 . Sin embargo,
incluir un mecanismo que detecte cuándo la mejor solución como en anteriores competiciones sólo se tenían en cuenta tres
no puede ser mejorada y se encargue de reiniciar la población. puntos de control (1,2·105 , 6,0·105 , 3,0·106 ), usaremos éstos
En IHDELS, el criterio de reinicio (línea 16) sólo se para las comparativas con algoritmos del estado del arte.
cumplía cuando no se conseguía mejorar durante una iteración La Tabla I recoge la configuración de parámetros usados
completa. Sin embargo, en optimización continua es bastante en esta experimentación. En dicha tabla se puede comprobar
frecuente que se siga mejorando ligeramente la mejor solución cómo se ha establecido un número de evaluaciones de 50000
en el entorno de un atractor. Esto hacía que el mecanismo de para cada iteración (25000 de las cuales son usadas por la
reinicio inicialmente propuesto sólo se aplicase unas pocas ED y las otras 15000 por la BL). El resto de parámetros,
veces, y en esos casos, con poco éxito. compartidos entre IHDELS y SHADE-ILS, se mantienen sin
En este trabajo, proponemos un mecanismo de reinicio que cambios.
se aplica cuando, durante tres iteraciones consecutivas, el ratio Tabla I: Configuración de parámetros
de mejora (teniendo en cuenta tanto la ED como la BD) es
menor del 5 %. En esos casos, el mecanismo de reinicio se Algoritmo Parámetro Descripción valor
aplica de la siguiente manera: ED popsize Tamaño de población 100
Se selecciona, aleatoriamente, una solución sol. Parámetros F EED FEs para la ED 25000
Compartidos F EBL FEs para la BL 25000
Se aplica una perturbación a sol que siga una distribución M T SIstep Paso inicial para MTS-LS1 20
normal de media 0 y desviación típica un 10 % del
IHDELS FreqBL Frec. actualización de prob. 10
dominio de búsqueda: currentbest = sol + randi ·
SHADE-ILS RestartN Iteraciones sin mejora 3
0,1 · (b − a), donde randi devuelve un número aleatorio IHDELS T hreshold Ratio de mejora mínimo 5%
randi ∈ [0, 1] y [a, b] es el dominio de búsqueda.
La población del algoritmo se reinicia aleatoriamente.
Los parámetros adaptativos de los métodos de BL se Los resultados de nuestra propuesta quedan recogidos en la
reinician a sus valores por defecto. Tabla II. Las siguientes secciones de esta contribución discuten
acerca de estos resultados. En primer lugar, analizamos la
Normalmente, las poblaciones se suelen reiniciar de manera
contribución de las distintas componentes de nuestra propu-
aleatoria (o a partir de perturbaciones sobre la mejor solución
esta, con especial interés en el mecanismo de reinicio. A
encontrada hasta ese momento). Lo que nosotros proponemos
continuación, comparamos los resultados con los del algoritmo
es seleccionar una solución aleatoriamente de la población de
IHDELS, en el que se basa esta propuesta. Por último,
la ED con el objetivo de que sea una solución razonablemente
compararemos los resultados con los del actual ganador de
buena pero que no haya sido mejorada todavía por la BL.
las últimas competiciones de LSGO, MOS.
Sobre ésta, realizamos una pequeña perturbación para evitar
que la siguiente población sea muy parecida a la actual. III-A. Influencia de las distintas componentes
Por otro lado, cuando la BL no es capaz de mejorar la mejor
En esta sección analizamos la contribución de cada una de
solución, también se reinician sus parámetros.
las subcomponentes de SHADE-ILS a los resultados globales.
Permitir tres iteraciones completas antes de reiniciar com-
En primer lugar, vamos a estudiar la contribución del nuevo
pletamente la población sigue la lógica de permitir al algoritmo
mecanismo de reinicio y a compararlo con el método anterior
que aplique ambas búsquedas locales y que éstas pueden, a su
a través del análisis de varias funciones representativas (Figura
vez, reiniciar sus parámetros. Si no se producen mejoras signi-
1). Hay algunas funciones, como F4 , donde el nuevo mecanis-
ficativas después de estas tres iteraciones, se aplica el reinicio
mo de reinicio mejora al anterior pero que presentan curvas de
de la población tal y como se describió con anterioridad.
convergencia con una tendencia similar. En otros casos, como
III. E XPERIMENTACIÓN en F5 , el nuevo mecanismo de reinicio permite al algoritmo
una exploración completa de la zona del óptimo, lo cual
Para la experimentación hemos seguido las directrices de la facilita una mejora rápida y continuada de la mejor solución.
competición de LSGO del CEC 2013 [15]. Este benchmark Por último, hemos observado, para varias funciones (como
se compone de 15 funciones de 1000 dimensiones y vari-
os niveles de separabilidad, desde funciones completamente 1 https://github.com/dmolina/shadeils

743
XVIII Conferencia de la Asociación Española para la Inteligencia Artificial
Tabla II: Resultados de SHADE-ILS en el benchmark del CEC 2013
Punto de Control Estadístico f1 f2 f3 f4 f5 f6 f7 f8
Mejor 1.55e+04 2.25e+03 2.01e+01 1.53e+10 1.53e+06 1.04e+06 1.75e+08 3.22e+13
Mediana 6.07e+04 2.57e+03 2.01e+01 2.60e+10 2.50e+06 1.05e+06 3.61e+08 1.62e+14
1.20e+05 Peor 1.42e+05 3.07e+03 2.12e+01 7.50e+10 3.28e+06 1.06e+06 9.46e+08 1.06e+15
Media 6.10e+04 2.65e+03 2.03e+01 3.13e+10 2.50e+06 1.05e+06 3.95e+08 2.12e+14
Desv. Típica 3.03e+04 2.17e+02 3.92e-01 1.43e+10 3.85e+05 6.68e+03 1.54e+08 2.04e+14
Mejor 0.00e+00 1.43e+03 2.00e+01 7.60e+08 1.29e+06 1.02e+06 4.72e+05 8.82e+11
Mediana 5.07e-25 1.74e+03 2.01e+01 1.26e+09 2.28e+06 1.04e+06 7.66e+05 6.17e+12
6.00e+05 Peor 2.27e-22 2.44e+03 2.01e+01 4.26e+09 3.08e+06 1.05e+06 2.70e+06 1.94e+13
Media 3.71e-23 1.80e+03 2.01e+01 1.54e+09 2.29e+06 1.04e+06 9.25e+05 6.93e+12
Desv. Típica 6.42e-23 2.93e+02 2.24e-02 8.22e+08 3.67e+05 8.35e+03 4.73e+05 4.28e+12
Mejor 0.00e+00 8.53e+02 2.00e+01 5.95e+07 1.09e+06 1.00e+06 7.65e+00 1.81e+10
Mediana 0.00e+00 9.88e+02 2.01e+01 1.15e+08 1.41e+06 1.02e+06 5.46e+01 2.78e+11
3.00e+06 Peor 6.73e-23 1.21e+03 2.01e+01 3.86e+08 1.86e+06 1.04e+06 1.99e+02 1.33e+12
Media 2.69e-24 1.00e+03 2.01e+01 1.48e+08 1.39e+06 1.02e+06 7.41e+01 3.17e+11
Desv. Típica 1.35e-23 8.90e+01 1.12e-02 8.72e+07 2.03e+05 1.19e+04 5.46e+01 3.06e+11
Punto de Control Estadístico f9 f10 f11 f12 f13 f14 f15
Mejor 2.15e+08 9.32e+07 1.98e+09 2.09e+03 4.74e+09 5.15e+10 6.12e+07
Mediana 2.88e+08 9.43e+07 4.23e+09 2.57e+03 1.30e+10 1.14e+11 8.11e+07
1.20e+05 Peor 3.52e+08 9.50e+07 3.46e+10 4.08e+03 2.57e+10 5.12e+11 1.58e+08
Media 2.88e+08 9.43e+07 6.55e+09 2.67e+03 1.29e+10 1.62e+11 9.12e+07
Desv. Típica 3.48e+07 4.90e+05 7.26e+09 4.86e+02 5.97e+09 1.08e+11 2.57e+07
Mejor 1.93e+08 9.08e+07 7.85e+07 5.97e+02 1.72e+07 4.62e+07 5.76e+06
Mediana 2.51e+08 9.30e+07 1.24e+08 1.33e+03 4.10e+07 6.42e+07 1.29e+07
6.00e+05 Peor 3.07e+08 9.39e+07 2.73e+08 1.89e+03 3.84e+08 1.24e+08 3.10e+07
Media 2.50e+08 9.29e+07 1.37e+08 1.28e+03 5.68e+07 6.97e+07 1.22e+07
Desv. Típica 3.08e+07 7.64e+05 4.74e+07 2.98e+02 7.27e+07 1.82e+07 6.30e+06
Mejor 1.30e+08 9.06e+07 3.10e+05 8.53e-20 3.52e+04 4.93e+06 3.91e+05
Mediana 1.63e+08 9.20e+07 4.50e+05 3.99e+00 8.28e+04 5.75e+06 6.09e+05
3.00e+06 Peor 1.94e+08 9.31e+07 1.43e+06 2.99e+02 3.31e+05 6.39e+06 1.56e+06
Media 1.64e+08 9.18e+07 5.11e+05 6.18e+01 1.00e+05 5.76e+06 6.25e+05
Desv. Típica 1.57e+07 6.93e+05 2.25e+05 1.04e+02 7.19e+04 3.76e+05 2.40e+05

F9 o F12 ) que el nuevo mecanismo de reinicio es capaz de Tabla III: Resultados para las diferentes combinaciones de las
incrementar significativamente la velocidad de convergencia. componentes del algoritmo tras 3 · 106 FEs
A continuación, vamos a comparar la influencia de cada Func. IHDELS-SR IHDELS-R IHDELS-S IHDELS original
una de las subcomponentes de manera individual. La Tabla (SHADE-ILS)
III presenta los resultados partiendo del algoritmo IHDELS y F1 2.69e-24 1.21e-24 1.76e-28 4.80e-29
aplicando los distintos cambios descritos en la Sección II: F2 1.00e+03 1.26e+03 1.40e+03 1.27e+03
IHDELS: Versión original de IHDELS propuesta en 2015 F3 2.01e+01 2.01e+01 2.01e+01 2.00e+01
[8], que usa SaDE y el mecanismo de reinicio original. F4 1.48e+08 1.58e+08 2.99e+08 3.09e+08
F5 1.39e+06 3.07e+06 1.76e+06 9.68e+06
IHDELS-S: Algoritmo que reemplaza SaDE por SHADE F6 1.02e+06 1.03e+06 1.03e+06 1.03e+06
pero manteniendo el mismo mecanismo de reinicio. F7 7.41e+01 8.35e+01 2.44e+02 3.18e+04
IHDELS-R: Algoritmo con el nuevo mecanismo de reini- F8 3.17e+11 3.59e+11 8.55e+11 1.36e+12
cio pero manteniendo SaDE en lugar de SHADE. F9 1.64e+08 2.48e+08 2.09e+08 7.12e+08
IHDELS-SR: Propuesta final, usando SHADE en lugar F10 9.18e+07 9.19e+07 9.25e+07 9.19e+07
F11 5.11e+05 4.76e+05 5.20e+05 9.87e+06
de SaDE y el nuevo mecanismo de reinicio.
F12 6.18e+01 1.10e+02 3.42e+02 5.16e+02
En el análisis anterior no incluimos el nuevo mecanismo de F13 1.00e+05 1.34e+05 9.61e+05 4.02e+06
selección de la BL porque las diferencias no eran evidentes. F14 5.76e+06 6.14e+06 7.40e+06 1.48e+07
No obstante, decidimos mantener dicho cambio ya que reduce F15 6.25e+05 8.69e+05 1.01e+06 3.13e+06
la complejidad del algoritmo al eliminar el parámetro F reqBL
Mejor 12 1 0 2
sin deterioro de la calidad de las soluciones.
Analizando los resultados de la Tabla III se pueden extraer
las siguientes conclusiones:
El cambio en el mecanismo de reemplazo tiene un efecto La combinación de SHADE y el nuevo mecanismo de
mayor que el de la componente de ED. reinicio es significativamente mejor que cualquiera de
El uso de SHADE en lugar de SaDE mejora los resulta- las otras combinaciones, lo cual pone de manifiesto que
dos significativamente, independientemente del mecanis- existe una interacción positiva entre ambas mejoras.
mo de reinicio utilizado, especialmente en el caso de las El algoritmo propuesto obtiene los mejores resultados
funciones no-separables y con solapamiento. en 12 de las 15 funciones del benchmark, siendo las

744
XIII Congreso Español en Metaheurı́sticas y Algoritmos Evolutivos y Bioinspirados

Figura 1: Comparativa del error medio para el mecanismo de reinicio original y el nuevo
Function: 04 Function: 05
1.00e+11 2.75e+6

2.50e+6

2.25e+6
1.00e+10
2.00e+6
Values

Values
1.75e+6

1.00e+9

1.50e+6

1.00e+8 1.25e+6
1.20e+5 6.00e+5 3.00e+6 1.20e+5 6.00e+5 3.00e+6
Evaluations Evaluations

New Restart Old Restart New Restart Old Restart


Highcharts.com Highcharts.com

Function: 09 Function: 12
3.00e+8 4.00e+3

2.75e+8
2.00e+3

2.50e+8
1.00e+3

2.25e+8
Values

Values
4.00e+2

2.00e+8
2.00e+2

1.75e+8
1.00e+2

1.50e+8 4.00e+1
1.20e+5 6.00e+5 3.00e+6 1.20e+5 6.00e+5 3.00e+6
Evaluations Evaluations

New Restart Old Restart New Restart Old Restart


Highcharts.com Highcharts.com

diferencias muy pequeñas en las otras 3. ahora, por lo que se puede considerar el actual estado-del-arte
En resumen, las diferentes componentes de SHADE-ILS, y, por tanto, la referencia clara que aspiramos a superar.
especialmente el nuevo mecanismo de reinicio y el uso de En la Tabla IV se presentan los resultados de SHADE-ILS
SHADE en lugar de SaDE, son capaces de mejorar claramente y MOS para los distintos puntos de control (1,2 · 105 , 6 · 105 , y
los resultados de IHDELS. Es más, la combinación de todos 3·106 ), de los que podemos extraer las siguientes conclusiones:
estos nuevos componentes obtiene los mejores resultados, MOS obtiene los mejores resultados tras 1,2 · 105 FEs,
que son significativamente mejores que los de cualquier otra éstos se igualan tras 6 · 105 FEs y, para el máximo
combinación posible. número de FEs, 3 · 106 , SHADE-ILS obtiene los mejores
resultados en 10 de las 15 funciones.
III-B. Comparación de SHADE-ILS e IHDELS MOS sigue obteniendo los mejores resultados en las fun-
En la Tabla III se puede observar que SHADE-ILS es ciones separables (f1 -f3 ), mientras que SHADE-ILS es
mejor que IHDELS en 13 de las 15 funciones del benchmark mejor en funciones más complejas: con la excepción de
(con diferencias mínimas en las otras dos). No sólo eso: las las funciones f6 y f10 , SHADE-ILS es significativamente
mejoras de SHADE-ILS son especialmente importantes en las mejor en el resto de las funciones.
funciones más complejas, donde obtiene un error al menos un SHADE-ILS es muy competitivo en un número mayor
orden de magnitud más pequeño en muchas de ellas (por ejem- de funciones, especialmente en las solapadas y no-
plo, en las funciones F5 , F7 , F8 , F11 , F12 , F13 , F14 , o F15 ). separables. No sólo mejora los resultados de MOS en
Como acabamos de discutir, las mejoras son debidas a la muchos casos, sino que sus resultados son, a menudo, al
combinación de ambas componentes. Por último, el cambio en menos un orden de magnitud más pequeños.
el mecanismo de selección de la BL elimina un parámetro del
algoritmo (F eqLS ) y lo hace, por tanto, más sencillo, mientras IV. C ONCLUSIONES
sigue manteniendo un comportamiento robusto. En este artículo hemos propuesto un nuevo algoritmo de
optimización especialmente diseñado para Optimización Glo-
III-C. Comparación de SHADE-ILS y MOS bal de Alta Dimensionalidad, SHADE-ILS, que combina la
En esta sección vamos a comparar SHADE-ILS con MOS, capacidad exploratoria de una ED adaptativa con la capacidad
el algoritmo de referencia en LSGO y, desde 2013, el ganador de intensificación de dos métodos de BL. En cada iteración
de todas las competiciones en alta dimensionalidad. Ningún del algoritmo, éste evoluciona una población con SHADE y,
otro algoritmo ha sido capaz de mejorar sus resultados hasta a continuación, selecciona la BL con el mejor rendimiento

745
XVIII Conferencia de la Asociación Española para la Inteligencia Artificial
Tabla IV: Resultados obtenidos por SHADE-ILS y MOS para los distintos puntos de control: FEs=1,2 · 105 , FEs=5,0 · 105 y
FEs=3,0 · 106 .
1.20e+05 6.00e+05 3.00e+06
Función SHADE-ILS MOS SHADE-ILS MOS SHADE-ILS MOS
F1 6.10e+04 2.71e+07 3.71e-23 3.48e+00 2.69e-24 0.00e+00
F2 2.65e+03 2.64e+03 1.80e+03 1.78e+03 1.00e+03 8.32e+02
F3 2.03e+01 7.85e+00 2.01e+01 1.33e-10 2.01e+01 9.17e-13
F4 3.13e+10 3.47e+10 1.54e+09 2.56e+09 1.48e+08 1.74e+08
F5 2.50e+06 6.96e+06 2.29e+06 6.95e+06 1.39e+06 6.94e+06
F6 1.05e+06 3.11e+05 1.04e+06 1.48e+05 1.02e+06 1.48e+05
F7 3.95e+08 3.46e+08 9.25e+05 8.19e+06 7.41e+01 1.62e+04
F8 2.12e+14 3.72e+14 6.93e+12 8.41e+13 3.17e+11 8.00e+12
F9 2.88e+08 4.29e+08 2.50e+08 3.84e+08 1.64e+08 3.83e+08
F10 9.43e+07 1.16e+06 9.29e+07 9.03e+05 9.18e+07 9.02e+05
F11 6.55e+09 3.13e+09 1.37e+08 8.05e+08 5.11e+05 5.22e+07
F12 2.67e+03 1.16e+04 1.28e+03 2.20e+03 6.18e+01 2.47e+02
F13 1.29e+10 8.37e+09 5.68e+07 8.10e+08 1.00e+05 3.40e+06
F14 1.62e+11 4.61e+10 6.97e+07 2.03e+08 5.76e+06 2.56e+07
F15 9.12e+07 1.45e+07 1.22e+07 6.26e+06 6.25e+05 2.35e+06

relativo durante la última fase de activación para que mejora [3] N. Xiong, D. Molina, M. L. Ortiz, and F. Herrera, “A walk into meta-
la mejor solución encontrada por el algoritmo poblacional. heuristics for engineering optimization: principles, methods and recent
trends,” International Journal of Computational Intelligence Systems,
Además, se ha incorporado un mecanismo de reinicio que 2015, vol. 8, no. 4, pp. 606–636, June 2015.
permite al algoritmo explorar otras regiones del espacio de [4] M. N. Omidvar, X. Li, and X. Yao, “Cooperative Co-evolution with
búsqueda cuando ésta se queda estancada (cuando la mejora delta grouping for large scale non-separable function optimization,” in
2010 IEEE Congress on Evolutionary Computation (CEC 2010). IEEE,
relativa es pequeña durante varias iteraciones consecutivas). 2010, pp. 1762–1769.
En la sección de experimentación, hemos puesto a prueba [5] M. N. Omidvar, X. Li, Y. Mei, and X. Yao, “Cooperative co-evolution
SHADE-ILS usando el benchmark propuesto para la com- with differential grouping for large scale optimization,” IEEE Transac-
tions on Evolutionary Computation, vol. 18, no. 3, pp. 378–393, June
petición de alta dimensionalidad del CEC 2013. En primer 2014.
lugar, hemos comprobado que cada una de las modificaciones [6] A. LaTorre, S. Muelas, and J. M. Peña, “Large Scale Global Opti-
llevadas a cabo sobre IHDELS contribuye significativamente mization: Experimental Results with MOS-based Hybrid Algorithms,”
in 2013 IEEE Congress on Evolutionary Computation (CEC 2013),
a la mejora de los resultados. A continuación, hemos com- Cancún, Mexico, 2013, pp. 2742–2749.
parado la propuesta con el algoritmo de referencia en alta [7] A. LaTorre, S. Muelas, and J. Peña, “A Comprehensive Comparison
dimensionalidad, MOS. En esta comparación, SHADE-ILS of Large Scale Global Optimizers,” Information Sciences, vol. 316, pp.
517–549, 2014.
consigue los mejores resultados, batiendo a MOS por primera [8] D. Molina and F. Herrera, “Iterative hybridization of DE with local
vez desde 2013. Esta comparación revela que SHADE-ILS search for the CEC’2015 special session on large scale global opti-
es especialmente competitivo en las funciones más complejas, mization,” in 2015 IEEE Congress on Evolutionary Computation (CEC
2015). IEEE, 2015, pp. 1974–1978.
con componentes solapadas y no separables, donde no sólo [9] A. Qin, V. Huang, and P. Suganthan, “Differential Evolution Algorithm
obtiene el error más pequeño en la mayoría de las funciones, With Strategy Adaptation for Global Numerical Optimization,” IEEE
sino que también consigue reducir el error en al menos un Transactions on Evolutionary Computation, vol. 13, no. 2, pp. 398–417,
Apr. 2009.
orden de magnitud en muchas de ellas. [10] R. Tanabe and A. Fukunaga, “Evaluating the performance of shade on
Como trabajo futuro, vamos a probar otras técnicas para cec 2013 benchmark problems,” in 2013 IEEE Congress on Evolutionary
acelerar la convergencia del algoritmo y obtener mejores Computation, June 2013, pp. 1952–1959.
[11] R. Poláková, J. Tvrdík, and P. Bujok, “L-shade with competing strategies
resultados en más funciones no-separables. applied to cec2015 learning-based test suite,” in 2016 IEEE Congress
on Evolutionary Computation (CEC), 2016, pp. 4790–4796.
AGRADECIMIENTOS [12] L. Y. Tseng and C. Chen, “Multiple Trajectory Search for Large
Scale Global Optimization,” in 2008 IEEE Congress on Evolutionary
Este trabajo ha sido financiado por ayudas del Ministerio Computation (CEC 2008). IEEE Press, Jun. 2008, pp. 3052–3059.
de Ciencia, Innovación y Universidades (TIN2014-57481-C2- [13] J. L. Morales and J. Nocedal, “Remark on algorithm 778: L-bfgs-
2-R, TIN2016-8113-R, TIN2017-83132-C2-2-R y TIN2017- b: Fortran subroutines for large-scale bound constrained optimization,”
ACM Trans. Math. Softw., vol. 38, no. 1, pp. 7:1–7:4, Dec. 2011.
89517-P) y de la Junta de Andalucía (P12-TIC-2958). [14] J.Brest and B. M.Sepesy Mac̆ec, “iL-SHADE: Improved L-SHADE
Algorithm for Single Objective Real-Parameter OptimizationTesting
R EFERENCIAS United Multi-operator Evolutionary Algorithms-II on Single Objective,”
in 2016 IEEE Congress on Evolutionary Computation (CEC), 2016, pp.
[1] K. V. Price, R. M. Rainer, and J. A. Lampinen, Differential Evolution: 1188–1195.
A Practical Approach to Global Optimization. Springer-Verlag, 2005. [15] X. Li, K. Tang, M. N. Omidvar, Z. Yang, and K. Quin, “Benchmark
[2] S. Dasa, S. Maity, B.-Y. Qu, and P. Suganthan, “Real-parameter evolu- functions for the CEC’2013 special session and competition on large
tionary multimodal optimization-a survey of the state-of-the-art,” Swarm scale global optimization,” RMIT University, Tech. Rep., 2013.
and Evolutionary Computation, vol. 1, no. 2, pp. 71–78, 2011.

746
XIII Congreso Español en Metaheurı́sticas y Algoritmos Evolutivos y Bioinspirados

An insight into evolutionary algorithms for


continuous optimization: Learning by competitions
1o Daniel Molina 2o Antonio LaTorre 3o Francisco Herrera
Department of Computer Science DATSI, ETSIINF Department of Computer Science
University of Granada Center for Computational Simulation University of Granada
Granada, Spain Universidad Politécnica de Madrid Granada, Spain
dmolina@decsai.ugr.es Madrid, Spain herrera@decsai.ugr.es
atorre@fi.upm.es

Abstract—During the recent years, continuous optimization has one and briefly describing for each year the winners, obtaining
significantly evolved to become a mature research field, in which several conclusions of the evolution of the competition. Also,
evolutionary and bio-inspired algorithms have an important role we discussed several issues that we consider interesting about
thanks to their good results with limited resources. Through
the last ten years, there have been a number of competitions the research topic, the influence of winning algorithms over
associated to special sessions in this area. In this study, we the years, and the evolution of real-parameter optimization. In
summarize, for different real-parameter competitions, the results, this work, we summarize the main conclusions obtained in that
highlighting the most relevant algorithms and techniques, pre- paper. Due to the space limit, we have removed the references
senting the trajectory they have followed and how some of these to the algorithms in this short summary. We refer the readers
works have deeply influenced the top performing algorithms of
today. The aim is to be both a useful reference for researchers to the aforementioned full paper [4] for details.
new to this interesting research topic and a useful guide for
current researchers in the field. II. S EVERAL OPTIMIZATION COMPETITIONS
Index Terms—Continuous optimization, global optimization, In our paper [4], we present the different global optimization
real-parameter optimization, large-scale global optimization. competitions held at multiple international conferences and
briefly describe the main algorithms (winner and runner-ups)
I. I NTRODUCTION for each year, according to the conclusions of the organizers.
Global optimization, also referred to as continuous or real- This review covers real-parameter, constraints, multi-modal
parameter optimization, is a growing research topic for its and large-scale competitions.
wide number of real-world applications. This optimization As previously mentioned, space limits do not allow us to
implies to optimize an objective function (we can consider go into details in this paper. Instead, we preferred to focus on
minimize without loss of generality): to obtain x∗ where the main conclusions derived from our study. For the details
f (x∗ ) ≤ f (x), ∀x ∈ [a, b], where a, b ∈ RN and f : RN → R. on the results of each competition, we refer the readers to [4].
Due to the immense domain search of some problems, it
is usually not possible to perform an exhaustive search in III. C URRENT TRENDS AFTER A DECADE OF
the entire domain, so meta-heuristic algorithms [1], [2] or COMPETITIONS
evolutionary algorithms [3] are usually applied. The recent and In this section, we use the historical information after a
growing interest on this type of optimization has fostered the decade of competitions in real-optimization to study which
development of a huge number of optimization algorithms that are the most influential algorithms, and the most successful
deal with this type of optimization (and many more proposals components of those algorithms that have been, since their
arise each year). Unfortunately, the great number of proposals proposal, incorporated to other methods.
makes following the evolution of this field difficult, and there
is no clear criterion to select the most adequate algorithms. A. Competitions winners and most influential algorithms
In order to give more visibility to the field, many special ses- In any research field, a good indication of its evolution is
sions have been proposed in international conferences. These to what extent some algorithms have influenced others over
special sessions have, frequently, an associated real-parameter the years, reusing ideas from previous successful proposals.
optimization competition, in which multiple algorithms are In this particular case, we concluded that there are three very
evaluated on a specific benchmark to allow fair comparisons influential algorithms: CMA-ES, L-SHADE and MVMO. Not
among them. Taking into consideration the results obtained in only they have inspired an important number of variants, but
these competitions, the evolution of this research topic can be they are also the roots of the majority of winners.
analyzed, and many interesting conclusions can be drawn. Since 2005, the most influential algorithm has been CMA-
In a recent work [4], we described the different real-coding ES. Algorithms based on this approach, such as BIPOP-CMA-
optimization competitions, noting the benchmark used for each ES or Ni-BIPOP-aCMA, were the winners of the CEC’2005,

747
XVIII Conferencia de la Asociación Española para la Inteligencia Artificial

BBOB’2009 and CEC’2013 competitions, respectively. Fur-


• Most of the proposals are memetic algorithms. The local
thermore, there are many algorithms inspired by CMA-ES that
search method used relies on many different types of
have won several editions of the BBOB competition. It has
methods, from more general to specific approaches, such
been used as a local search method (see DRMA-LSCh-CMA)
as the ones used in MTS and other LSGO algorithms.
or as a component in a hybrid algorithm such as, for example,
• In order to increase the selective pressure in the pop-
in iCMAES-ILS, the winner of the CEC’2013 competition.
ulations, one approach popularized by L-SHADE and
A second algorithm with an increasing influence is L-
adopted by other algorithms is to decrease the population
SHADE, the winner in 2014. Its good results have favored an
size during the run. In conjunction with a memory
interesting list of winners using it in CEC’2015 (two of the
of solutions, it increases the exploitation ability of the
three best algorithms), CEC’2016 and CEC’2017 (the three
algorithm, maintaining certain diversity in the search.
winners, and also other algorithms).
• Traditionally, in most of the best-performing methods
A third algorithm with good results was the MVMO scheme
only the best solutions were considered to guide the
algorithm, which proves that being a scheme is not only
search. This means that a lot of information was being
good for global optimization, but also when the number of
wasted in each generation. In more recent algorithms, bad
allowed fitness evaluations is very scarce (as shown by its
solutions are also used to guide the search. Similarly, in
good behavior in the expensive benchmark). In this case,
the MVMO family of algorithms, not only is the best
the different proposals came from the same authors, maybe
solution is considered, but also the average of a group of
because this method is still not as popular as the DE scheme.
good solutions.
Obviously, the algorithms with the best results in the com-
petitions are the most influential. However, sometimes, such as IV. C ONCLUSIONS
with the SHADE or VMO algorithms, their first versions were
The use of Bio-inspired and Evolutionary Algorithms for
not among the winners, but they were evolved and, over the
real-parameter optimization is of great interest today, and
next few years, other methods based on them performed better
thus many approaches based on this type of optimization are
achieving winning positions. Furthermore, it is remarkable that
proposed each year. This large number of proposals makes it
the metaheuristics with the best results in these competitions
difficult for researchers to follow the evolution of the field. In
are far from being bio-inspired algorithms. In this sense, these
this paper, we have presented some conclusions after a decade
results remind us that the novelty of new metaheuristics is very
of competitions on this type of real-parameter optimization
important but also subordinated to their performance in solving
problems. We have observed that there are several algorithms,
optimization problems.
such as CMA-ES, L-SHADE, MVMO and MOS, that have
B. Techniques/components for winner algorithms exercised a strong influence over other algorithms. We have
One of the most interesting issues when studying successful also suggested several techniques that are being widely adopt-
algorithms is the identification of the different components ed among the winning proposals, and which could be used for
that each algorithm uses, as they can be further used by other more competitive algorithms.
methods to boost their performance. In the following, we The objective of this review and analysis of the evolution
highlight several popular techniques/components that seem to of the competitions is to offer a useful reference to new
provide good results: researchers in this research topic, and to help them to continue
improving the field.
• A frequent problem with many algorithms is the selection
of appropriate values for their parameters. There are ACKNOWLEDGMENTS
two alternatives: to be carefully chosen or an automatic This work was supported by grants from the Span-
parameter tuning tool. Another option, very popular in ish Ministry of Science and the European Fund (FED-
competitive algorithms, is to use self-adaptive criteria to ER) under projects (TIN2014-57481-C2-2-R, TIN2016-8113-
adjust them, using an adaptive probability or a memory R, TIN2017-83132-C2-2-R, TIN2017-89517-P) and Regional
to enforce good parameter values. Government (P12-TIC-2958).
• Several algorithms not only self-adapt their parameters,
but also their components, having several components R EFERENCES
that provide the same functionality and then selecting one [1] F. Glover and G. A. Kochenberger, Handbook of metaheuristics.
of them according to their performance. Springer, 2003.
• When the self-adaptive component is not a part of an
[2] N. Xiong, D. Molina, M. L. Ortiz, and F. Herrera, “A walk into meta-
heuristics for engineering optimization: principles, methods and recent
optimization algorithm but of a complete algorithm, the trends,” International Journal of Computational Intelligence Systems,
proposal can be considered as a framework of algorithm- 2015, vol. 8, no. 4, pp. 606–636, June 2015.
s. One proposal can be designed to have a particular [3] T. Bäck, D. B. Fogel, and Z. Michalewicz, Eds., Handbook of Evolution-
ary Computation. Bristol, UK: IOP Publishing Ltd., 1997.
combination, such as in the case of iCMAES-ILS, or [4] D. Molina, A. LaTorre, and F. Herrera, “An insight into bio-inspired and
allow a more open selection of optimization methods, as evolutionary algorithms for global optimization: Review, analysis, and
in MOS, the state-of-art algorithm in large-scale global lessons learnt over a decade of competitions,” Cognitive Computation,
Apr 2018. [Online]. Available: https://doi.org/10.1007/s12559-018-9554-
optimization for more than six years. 0

748
XIII Congreso Español
de Metaheurísticas,
Algoritmos Evolutivos y
Bioinspirados
(XIII MAEB)

MAEB 11:
COMPUTACIÓN E VOLUTIVA:
FUNDAMENTOS Y M ODELOS II
XIII Congreso Español en Metaheurı́sticas y Algoritmos Evolutivos y Bioinspirados

Un estudio sobre la influencia de la función


objetivo en evolución gramatical para
regresión simbólica
J. Manuel Colmenar J. Ignacio Hidalgo
Universidad Rey Juan Carlos Universidad Complutense de Madrid
C/. Tulipán s/n, 28933, Móstoles, Spain C/. Prof. José Garcı́a Santesmases 9, 28040, Madrid, Spain
Email: josemanuel.colmenar@urjc.es Email: hidalgo@dacya.ucm.es

Resumen—La evolución gramatical es una variante gramática para construir los árboles que representan
de la programación genética, que permite, entre otras una solución. Esto permite introducir conocimiento del
caracterı́sticas, introducir conocimiento del problema en problema en el proceso de búsqueda y controlar el
el proceso de búsqueda. Una de las aplicaciones más
importantes de esta técnica, al igual que de la progra- tamaño de los árboles que representan a las soluciones.
mación genética tradicional, es la regresión simbólica. Una de las aplicaciones más relevantes de esta
La regresión simbólica consiste en obtener expresiones técnica, al igual que de la programación genética
matemáticas que modelen un conjunto de datos. Como tradicional, es la regresión simbólica. La regresión
todo algoritmo evolutivo, la búsqueda tiene que estar simbólica consiste en obtener expresiones matemáticas
guiada por una función objetivo. Esta función objetivo,
en el caso de la regresión simbólica, debe medir la que representen un conjunto de datos. Sus aplicaciones
proximidad de la función matemática reportada por el en la actualidad son innumerables ya que es un técnica
algoritmo a los datos objeto del problema. Por lo tanto, fundamental en el análisis de datos y modelado de
lo más habitual es utilizar el error cuadrático medio, el sistemas a partir de registros de información [3, 4].
valor de R2 , o alguna otra variante de la diferencia entre Como todo algoritmo evolutivo, la búsqueda tiene que
los puntos. En este artı́culo investigamos la influencia de
la utilización del error cuadrático medio y de R2 en el estar guiada por una función objetivo. Esta función ob-
proceso de búsqueda y en la calidad de las soluciones jetivo, en el caso de la regresión simbólica, debe medir
obtenidas con evolución gramatical en problemas de la proximidad de la función matemática reportada por
regresión simbólica. el algoritmo a los datos objeto del problema. Por lo
tanto, lo más habitual es utilizar el error cuadrático
I. I NTRODUCCI ÓN medio, el valor de R2 , o alguna otra variante de la
Uno de los paradigmas más importantes en cuanto diferencia entre los puntos. Sin embargo, aunque el
a las aplicaciones de la inteligencia artificial es la objetivo buscado sea el mismo, al utilización de una
computación evolutiva y dentro de ella es de funda- u otra función puede tener consecuencias importantes
mental importancia la programación genética (PG, o en el resultado final del proceso de búsqueda.
GP, de sus siglas en inglés: Genetic Programming) En este artı́culo se analiza la influencia de la uti-
[6]. La PG es una metodologı́a que permite obtener lización del error cuadrático medio y de R2 tanto
de una forma automática programas que representen en el proceso de búsqueda com en la calidad de
soluciones a problemas o que realicen una determinada las soluciones obtenidas con evolución gramatical en
función. Utiliza una representación de las soluciones problemas de regresión simbólica. Como se verá en
en forma de árboles, lo que hace que en ocasiones la discusión del trabajo, a partir de las expresiones de
el tamaño de memoria necesario para representar las las funciones objetivo, intuitivamente se puede pensar
soluciones de la población sea excesivo. Por ello se que cuando se utiliza el valor de R2 los resultados
han desarrollado alternativas que funcionen bajo los de la búsqueda deben reportar expresiones que tengan
mismos principios pero que permitan reducir tanto el una alta correlación con los datos, pese a que no
espacio ocupado en memoria, como el tiempo efectivo estemos obteniendo una función que represente exac-
de búsqueda de soluciones. La evolución gramatical, tamente todos los datos. Sin embargo, al utilizar el
también conocida como gramáticas evolutivas (de una error cuadrático medio (RMSE, del inglés Root Mean
mala traducción del inglés, Grammatical Evolution) Square Error) se esperarı́a que las buenas soluciones
[7], es una variante de la programación genética en representen los datos de manera más fiel. Para realizar
la que se utilizan una serie de reglas recogidas en una el estudio se han utilizado varios problemas clásicos de

751
XVIII Conferencia de la Asociación Española para la Inteligencia Artificial

regresión simbólica, y se han comparado los resultados # Rule to create the main structure of the
utilizando gramáticas iguales con funciones objetivo produced expression
<expr> ::= (<expr> + <expr>) / (<expr> + <
diferentes. Los resultados muestran la diferencia en- expr>)
tre los modelos y soluciones obtenidas ası́ como la | <expr> + <expr> | <expr> - <expr
>
influencia de la función objetivo en estos resultados. | <expr> * <expr> | <expr> / <expr>
El resto del artı́culo está organizado como sigue. | <c> | <c>.<c> | <c><c>.<c><c> | <
var> | <var>
En la sección II se describe brevemente la técnica de | <expr> <op> <expr> | <c>ˆ<var>
la evolución gramatical. En la sección III se revisa el | exp(abs(<c> <op> <var>)) | log(abs
(<c> <op> <var>))
diferente enfoque de las funciones objetivo bajo estudo.
La exposición de los resultados y su análisis se realiza # Digits
<c> ::= 0|1|2|3|4|5|6|7|8|9
en la sección IV y la sección V resume las principales
conclusiones de este trabajo. # Arithmetic operands
<op> ::= +|-|*|/

# Input variables
II. E VOLUCI ÓN G RAMATICAL <var> ::= X1 | X2

La evolución gramatical es un paradigma evolutivo Figura 1: Gramática diseñada para abordar los expe-
que deriva de la programación genética. En resumen, rimentos. El ejemplo corresponde a Vladislavleva-F8,
la aportación de la evolución gramatical consiste en que trata 2 variables de entrada.
modificar la representación de los individuos utilizando
cromosomas en lugar de árboles. Este cambio permite
que se puedan utilizar operadores clásicos de algorit-
mos genéticos como el cruce, mutación o selección, 
P
2
cuya implementación es más sencilla y eficiente al ((E i − E)(O i − O))
R 2 =  qP i 
ejecutar sobre cromosomas que sobre árboles. Además, 2
P 2
i (Ei − E) i (Oi − O)
para realizar la decodificación del cromosoma se utiliza
una gramática, que incluye reglas de producción que
s
1 X
permiten generar las expresiones que corresponden al RM SE = (Oi − Ei )2
N i
fenotipo del individuo.
Pese a ser una técnica reciente, durante los últimos R2 no es sólo una medida de la bondad de ajuste,
años se ha utilizado de forma extensa en problemas sino también una medida de hasta qué punto el modelo
de modelado. Para mayor información sobre evolución (el conjunto de variables independientes que se selec-
gramatical se puede recurrir a los trabajos mencionados cionó) explica el comportamiento (o la varianza) de su
en la introducción y también acudir a [2] ó [5] para variable dependiente. Por lo tanto, si un modelo tiene
ver el detalle del proceso de decodificación. una R2 de 0,6, esto explica el 60 % del comportamiento
Como ejemplo de gramática, la Figura 1 muestra la de su variable dependiente. Ahora, si se se usa el
que se ha utilizado en los experimentos de este artı́culo. R2 Ajustado que esencialmente penaliza el R2 por
En particular, esta gramática corresponde al conjunto el número de variables que usa el modelo, se puede
de datos de referencia Vladislavleva-F8 porque con- obtener una idea bastante buena de cuándo hay que
sidera dos variables de entrada, como se indica en la dejar de agregar variables al modelo (y eventualmente
última regla. Para el resto de las pruebas de referencia, simplemente obtener un modelo que se ajuste). Si el R2
esta regla será la única modificada, adaptada al número Ajustado de los modelos obtenidos con un conjunto de
de variables de entrada. variables es 0,8, y al añadir una variable sólo aumenta
en 0,01, lo más indicado es que no sea necesario añadir
esa variable. Realmente, si el algoritmo de evolución
III. F UNCIONES OBJETIVO EN PROBLEMAS DE
gramatical está bien diseñado, esto no debe suceder
REGRESI ÓN SIMB ÓLICA
ya que de inicio se habrán seleccionado las variables
A continuación, se planteará la formulación de que intervienen y el propio algoritmo proporcionará un
la funciones objetivo bajo estudio en este artı́culo. modelo que implı́citamente indica qué variables son
Siendo O el vector de valores observados (aquellos las más importantes, ya que son las que aparecen en
provinientes de la optimización) y E el vector de el modelo.
valores esperados (formado por la variable objetivo), En el caso de RMSE, éste devuelve una estimación
y O y E los valores promedio de cada uno de ellos, de la desviación estándar de los residuales1 [1]. Por
las expresiones para las funciones objetivo son las 1 La diferencia entre los valores reales y los estimados es el
siguientes: residual.

752
XIII Congreso Español en Metaheurı́sticas y Algoritmos Evolutivos y Bioinspirados

tanto, a mayor RMSE, mayor desviación estimada en sensible, que controla el tamaño de los fenotipos de
los errores del modelo. los individuos de la generación inicial evitando que
En principio, por tanto, R2 mide el ajuste de un sean excesivamente grandes. De cada experimento se
modelo sobre un conjunto concreto de datos, mientras han realizado diez ejecuciones diferentes utilizando
que RMSE mide la dispersión de los errores. A priori, los mismos parámetros de entrada para el algoritmo de
podrı́a parecer que estas medidas indican ambas la GE, que se muestran en la Tabla I. Los experimentos
calidad de un modelo, por lo que podrı́an ser inter- se ejecutaron en un ordenador equipado con un
cambiables. Sin embargo, como se verá en la sección procesador Intel Core i7 a 2.9 GHz con 16 GB de
de resultados, valores altos de una de las métricas no RAM sobre sistema operativo Mac OSX 10.13.5.
implican valores altos de la otra.
IV. R ESULTADOS EXPERIMENTALES Parámetro Valor
Los experimentos de este artı́culo se han realizado Población 300 individuos
sobre un conjunto de tres problemas de regresión Generaciones 1700
Selección Torneo (2 indiv.)
estándar, que se denominarán benchmarks a partir de Prob. Cruce 80 %
este punto, haciendo uso de la expresión comunmente Prob. Mutación 2%
utilizada en inglés. Estos problemas se han seleccio- Función objetivo R2 ó RM SE
Inicialización random, sensible
nado como parte de los problemas recomendados para Longitude del Cromosoma 256
PG en [10], y son los siguientes: Tower, Vladislavleva- Número máximo de wraps 5
F8 y Spatial co-evolution. A continuación se detallan
Tabla I: Valores de los parámetros utilizados en los
algunas de las caracterı́sticas de estos problemas:
experimentos.
En el conjunto de datos Spatial co-evolution [8],
la variable objetivo se define de la siguiente
manera: El primer aspecto a analizar es la evolución
1 1 de las ejecuciones a través del análisis del mejor
F (x, y) = + individuo. Para ello, se tomó el valor de la función
1 + x−4 1 + y −4
objetivo cada 100 generaciones, en cada una de las
En el conjunto de entrenamiento original existen ejecuciones. Dado que se lanzaron 10 ejecuciones
676 registros en los cuales los valores para las para cada experimento, los datos que se muestran
variables x e y se muestrean desde -5 a +5 en se corresponden con el promedio de las 10 ejecuciones.
intervalos de 0.4. En el conjunto de test hay 1000
registros en los que las variables x e y se mues-
En primer lugar, las figuras 2 y 3 muestran la
trean en el intervalo [−5, . . . , +5] aleatoriamente.
evolución para el caso de la inicialización con una
En conjunto, forman un total de 1676 datos, y se
población aleatoria (random), utilizando como función
han utilizado como serie de regresión al completo.
objetivo R2 y RM SE respectivamente. Dado que
El conjunto de datos Tower [9] proviene de un
el algoritmo trata de minimizar, el valor que se
problema industrial sobre medidas de cromato-
presenta en el caso de R2 es en realidad 1 − R2 ,
grafı́a de gases en una torre de destilación. El
y ası́ será para el resto de experimentos. Como se
conjunto de datos contiene 5000 registros y 25
puede apreciar, el problema más difı́cil de resolver
variables de entrada potenciales. La variable de
es Tower. Por otro lado, la evolución tiene una
respuesta es la concentración de propileno en la
tendencia hacia abajo menos pronunciada a partir de
parte superior de la torre de destilación. Los datos
la generación 500 aproximadamente en ambas gráficas.
de Tower se pueden descargar en http://www.
symbolicregression.com/?q=towerProblem.
El conjunto de datos Vladislavleva-F8, denotado Las figuras 4 y 5 muestran la convergencia para
como VF8 a partir de este momento, define las el caso de la inicialización sensible, utilizando como
variables de salida como funciones de x1 y x2 , función objetivo 1 − R2 y RM SE respectivamente.
de la siguiente manera: De nuevo, el comportamiento es similar en ambos
casos, siendo Tower el problema más difı́cil. En el
caso de la comparativa entre los diferentes tipos de
(x1 − 3)4 + (x2 − 3)3 − (x2 − 3)
F8 (x1 , x2 ) = inicialización, se puede ver que entre las figuras 2 y
(x2 − 2)4 + 10 4, que utilizan la misma función objetivo, 1 − R2 ,
Para todos los benchmarks se han estudiado las dos y diferente inicialización, la inicialización sensible
funciones objetivo, R2 y RM SE, con dos tipos de alcanza mejores valores promedio a lo largo de toda
inicialización para la primera población del algoritmo: la ejecución del algoritmo en los tres benchmarks.
inicialización aleatoria (random) e inicialización

753
XVIII Conferencia de la Asociación Española para la Inteligencia Artificial

Figura 2: Valores promedio de la función objetivo: 1 − Figura 4: Valores promedio de la función objetivo: 1 −
R2 . Inicialización random. R2 . Inicialización sensible.

Figura 3: Valores promedio de la función objetivo: Figura 5: Valores promedio de la función objetivo:
RM SE. Inicialización random. RM SE. Inicialización sensible.

En el caso de la optimización con RM SE, la como R2-Random; optimización a través de R2 e


inicialización sensible no aporta valores mejores en la inicialización sensible como R2-Sensible y, de manera
evolución. A pesar de que la escala no permite ver análoga, para RM SE y las dos inicializaciones
las diferencias gráficamente en las figuras 3 y 5, sı́ estudiadas como RMSE-Random y RMSE-Sensible.
que se aprecia que al principio los valores promedio
son mejores, pero según avanza la evolución, los En la Figura 6 se puede apreciar cómo los valores
experimentos con inicialización aleatoria obtienen de R2-Random y R2-Sensible son mayores que en la
mejores valores promedio. optimización con RM SE. En el caso, por ejemplo,
de Tower, la diferencia es muy significativa, llegando
Independientemente de las funciones objetivo a estar por encima del 30 %. Los valores concretos
utilizadas, se han calculado los valores de R2 de R2 se muestran en la Tabla III. Se puede apreciar
y RM SE para todas las soluciones obtenidas también que la inicialización sensible mejora los
en los experimentos. La figuras 6 y 7 muestran, resultados hasta en un 2 % para los experimentos
respectivamente, los valores promedio de R2 y donde la función objetivo es 1 − R2 .
RM SE para cada uno de los benchmarks en los
diferentes casos. Se denota el experimento con La Figura 7 muestra los valores de RM SE para
optimización a través de R2 e inicialización aleatoria las mismas soluciones que se han utilizado en la

754
XIII Congreso Español en Metaheurı́sticas y Algoritmos Evolutivos y Bioinspirados

spatial tower VF8


R2-Random 15,58366595 348,2669206 1,942964282
R2-Sensible 10,67370612 365,2646472 3,94804835
RMSE-Random 0,272769052 58,39444643 0,787039727
RMSE-Sensible 0,298058917 59,40281873 1,035522363

Tabla III: Valores promedio de RM SE.

en los valores de la función objetivo. Sin embargo,


también demuestran que las funciones objetivo bajo
estudio no son equivalentes.

Por un lado, la función objetivo R2 muestra la


correlación entre dos series de valores. Una elevada
Figura 6: Valores promedio de R2 para los diferentes correlación indica que la tendencia de las dos series
experimentos. Mejor cuanto más alto. es similar, independientemente del valor concreto del
error entre el valor observado y el valor esperado.
Un modelo con elevado valor de R2 puede conseguir
buenas predicciones sobre valores no conocidos.

Por otro lado, la función objetivo RM SE muestra


el error o diferencia entre una serie de predicciones
y los datos esperados correspondientes. Al minimizar
RM SE se reduce el error, por lo que la serie
de predicciones se acerca a la serie esperada. La
consecuencia es que se obtienen modelos cuya
precisión es alta, pero cuya capacidad de predicción
puede ser mala, debido al efecto de sobreajuste,
también llamado overfitting.
Figura 7: Valores promedio de RM SE normalizados Con objeto de evaluar la calidad de las soluciones
para los diferentes experimentos. Mejor cuanto más obtenidas a través de una métrica diferente, se propone
bajo. en este artı́culo la utilización de la métrica conocida
como similitud del coseno. Esta medida interpreta
spatial tower VF8
R2-Random 0,901794689 0,80986102 0,960807366 ambas series de datos, observada y esperada, como
R2-Sensible 0,920002539 0,821656958 0,969546579 vectores O y E respectivamente. De esta manera,
RMSE-Random 0,672605164 0,56536177 0,910126819 se calcula el coseno del ángulo que forman ambos
RMSE-Sensible 0,627583903 0,547273778 0,840721671
vectores utilizando la siguiente expresión:
Tabla II: Valores promedio de R2 . P
O i Ei
Coseno(θ) = pP i 2 pP 2
i Oi i Ei
Figura 6. En este caso, dado que los valores presentan Si el valor del coseno es cercano a 1, entonces
diferentes órdenes de magnitud, se han normalizado el ángulo que forman los vectores es cercano a 0o ,
respecto a la décima parte del valor máximo. Los por lo que se tratará de series similares. Si el valor
valores concretos de RM SE se presentan en la Tabla es cercano a -1, entonces el ángulo es cercano a
III. Como se puede apreciar, los valores de RM SE 180o , lo que significa que las series tienen tendencia
son mucho mejores en el caso de los algoritmos que similar, pero en sentido opuesto. En caso de que el
utilizan esta métrica como función objetivo, llegando valor del coseno esté cerca de 0, se trata de series
a obtener un orden de magnitud de diferencia. Resulta perpendiculares, lo que se considera como la menor
significativo señalar que la inicialización sensible no similitud posible. Sobre las soluciones obtenidas en los
mejora los resultados en este caso. Al contrario, se experimentos se ha calculado la similitud de coseno.
llega a peores resultados en los tres problemas bajo La Tabla IV muestra los valores obtenidos para los
estudio. experimentos donde la inicialización es aleatoria.
Para cada benchmark se muestran los valores de
Estos resultados son coherentes con lo que se espera las optimizaciones donde la función objetivo es
de algoritmo de optimización, que consigue la mejora 1 − R2 (R2) y también los valores donde la función

755
XVIII Conferencia de la Asociación Española para la Inteligencia Artificial

de coste ha sido RM SE. Los valores presentados AGRADECIMIENTOS


corresponden a las 10 ejecuciones realizadas. Como Este trabajo ha sido financiado por el Ministerio
se aprecia en la tabla, los valores para RM SE son de Economı́a y Competitividad de España a través
más altos y más consistentes, tal y como indican los de los proyectos con referencias TIN2014-54806-R y
valores promedio que se muestra en la última fila. TIN2015-65460-C2.
En el caso de R2 , existen valores altos, cercanos al
1, pero también existen valores negativos y alguno R EFERENCIAS
cercano al 0, 5. [1] D. L. J. Alexander, A. Tropsha, and David A.
Winkler. Beware of r2 : Simple, unambiguous
spatial tower VF8
assessment of the prediction accuracy of qsar and
Run R2 RSME R2 RSME R2 RSME qspr models. Journal of chemical information and
1 0,9393 0,9931 0,9514 0,9881 0,9255 0,9758 modeling, 55.7:1316–1322, 2015.
2 0,9931 0,9666 0,96 0,9857 0,9865 0,9732
3 0,9807 0,9877 0,9541 0,9856 0,9782 0,9534 [2] J. M. Colmenar and J. I.. Hidalgo. Análisis de
4 -0,7232 0,9962 0,9846 0,9886 0,9634 0,9736 algoritmos de evolución gramatical en problemas
5 0,9643 0,9897 0,9754 0,9838 0,8801 0,9434
6 0,5044 0,9698 -0,9682 0,9844 0,6949 0,9871 de regresión simbólica. In XII Metaheurı́sticas,
7 0,9608 0,9902 0,9655 0,9874 0,905 0,961 Algoritmos Evolutivos y Bioinspirados (MAEB
8 0,946 0,9723 -0,9826 0,9871 -0,9157 0,9535
9 0,9622 0,9905 0,9784 0,9874 0,9879 0,9487 2017), pages 901–910, Barcelona, Spain, 2017.
10 0,9588 0,9914 0,9721 0,985 0,9824 0,9265 Universitat Pompeu Fabra.
Avg. 0,7486 0,9847 0,5791 0,9863 0,7388 0,9596
[3] Ian Dempsey, Michael O’Neill, and Anthony Bra-
Tabla IV: Similitud de coseno para los experimentos bazon. Live trading with grammatical evolution.
con inicialización random. La última fila muestra el In GECCO 2004 Workshop Proceedings, Seattle,
valor promedio. Washington, USA, 26-30 June 2004.
[4] J. Ignacio Hidalgo, J. Manuel Colmenar, José L.
La Tabla V muestra las mismas estadı́sticas, pero Risco-Martin, Alfredo Cuesta-Infante, Esther Ma-
para los experimentos donde la inicialización es queda, Marta Botella, and José Antonio Ru-
sensible. De nuevo, la tendencia es la misma, aunque bio. Modeling glycemia in humans by means of
los resultados para los experimentos donde la función grammatical evolution. Applied Soft Computing,
de coste es 1 − R2 son peores en este caso. Es (20):40–53, 2014.
destacable el conjunto de resultados de spatial, que [5] José Ignacio Hidalgo, J. Manuel Colmenar,
obtuvo el mejor promedio de R2 para la optimización José Luis Risco-Martı́n, Alfredo Cuesta-Infante,
R2-Sensible (ver Tabla II), mientras que los valores Esther Maqueda, Marta Botella, and José Antonio
de similitud de coseno de ese mismo experimento son Rubio. Modeling glycemia in humans by means
los peores, con dos valores por debajo de 0, 29. of grammatical evolution. Appl. Soft Comput.,
20:40–53, 2014.
spatial tower VF8
[6] J. R. Koza. Genetic Programming. The MIT
Run R2 RSME R2 RSME R2 RSME Press, Cambridge, Massachusetts, 1992.
1 0,9966 0,9886 0,9391 0,9866 0,8819 0,9733 [7] Michael O’Neill and Conor Ryan. Grammatical
2 0,9705 0,9911 -0,965 0,9862 -0,9872 0,9673
3 0,9708 0,9914 0,9793 0,9844 -0,9889 0,9456 evolution. IEEE Trans. Evolutionary Compu-
4 0,2871 0,982 -0,9777 0,987 0,9486 0,8021 tation, 5(4):349–358, 2001.
5 0,9883 0,9743 0,9576 0,9863 0,6819 0,9566
6 0,9519 0,9762 0,9868 0,9856 0,9682 0,845 [8] Ludo Pagie and Paulien Hogeweg. Evolutionary
7 0,9112 0,9897 0,9611 0,9853 0,9178 0,8424 consequences of coevolving targets. Evolutionary
8 0,9634 0,9725 0,9687 0,9863 0,9484 0,953
9 0,957 0,9739 -0,9472 0,9863 0,9791 0,9485 Computation, 5:401–418, 1998.
10 0,1608 0,991 0,9707 0,9844 0,9199 0,9714 [9] E. J. Vladislavleva, G. F. Smits, and D. den Her-
Avg. 0,8158 0,9831 0,3873 0,9858 0,527 0,9205
tog. Order of nonlinearity as a complexity mea-
Tabla V: Similitud de coseno para los experimentos sure for models generated by symbolic regression
con inicialización sensible. via pareto genetic programming. IEEE Transac-
tions on Evolutionary Computation, 13(2):333–
349, April 2009.
V. C ONCLUSIONES Y TRABAJO FUTURO [10] David R. White, James McDermott, Mauro Cas-
A la vista de los experimentos realizados en este telli, Luca Manzoni, Brian W. Goldman, Ga-
artı́culo, se puede afirmar que R2 y RM SE no son briel Kronberger, Wojciech Jaśkowski, Una-May
funciones que lleven a soluciones equivalentes en todos O’Reilly, and Sean Luke. Better GP benchmarks:
los casos. Muy al contrario, pueden obtener resultados community survey results and proposals. Genetic
realmente diversos. Sin embargo, este es un estudio Programming and Evolvable Machines, 14(1):3–
muy preliminar que se deberá extender en el futuro. 29, Mar 2013.

756
XIII Congreso Español en Metaheurı́sticas y Algoritmos Evolutivos y Bioinspirados

Un análisis preliminar de nuevos modelos de


mutación dirigida en algoritmos genéticos.
B. Rodrı́guez-Puerta, Francisco Dı́az-Barrancas, F. Chávez, F. Fernández de Vega
Dpto. de Ingenierı́a en Sistemas Informáticos y Telemáticos
Universidad de Extremadura
06800 Mérida, España.
Email: {brpuerta, frdiaz, fchavez, fcofdez}@unex.es

Resumen—En este artı́culo se presenta un análisis los AGs son ampliamente utilizados por la comunidad
preliminar de un modelo de operador de mutación cientı́fica.
dirigida para problemas con codificación binaria y sin Un AG tı́pico se compone de los siguientes ele-
epistasis. Esta versión del operador permite asociar una
probabilidad de mutación a cada gen de cada individuo, mentos:
proporcional a la influencia que ha tenido dicho gen Un individuo: es la representación de una posi-
sobre la calidad del individuo durante el proceso evo- ble solución al problema.
lutivo. Estos valores de probabilidad, permiten a cada Una población: compuesta por un conjunto de
individuo realizar mutaciones de manera dirigida, con
el objetivo de reducir el tiempo de convergencia del
individuos.
algoritmo. Una función de fitness: que permite evaluar la
El conjunto de experimentos realizado con el nuevo calidad de un individuo.
operador de mutación demuestra que el algoritmo Operadores genéticos: que permiten generar una
genético converge a soluciones en etapas más tempranas nueva población a partir de la anterior (operador
del proceso evolutivo, en comparación con la mutación
cruce, operador mutación y operador selección).
clásica. Se han llevado a cabo una serie de experimentos
con un problema clásico de test, donde aplicando el Parámetros de control: que permiten controlar
nuevo operador de mutación dirigida, se consiguen la ejecución del algoritmo.
buenos resultados. Aunque estos resultados son aún muy Para maximizar la eficiencia de los AGs es posi-
preliminares, esperamos poder continuar el estudio en ble modificar los parámetros y operadores genéticos
problemas más complejos en el futuro, y mostrar ası́
la utilidad de esta versión de la mutación dirigida en anteriormente mencionados.
otros contextos. Entre los componentes del algoritmo, hay tres
parámetros fácilmente ajustables que permiten mo-
I. INTRODUCTION dificar el proceso de búsqueda de soluciones: pro-
babilidad de mutación (Pm ), probabilidad de cruce
Los algoritmos evolutivos [5] (AEs), son un con- (Pc ) y tamaño de la población (T ). Son numerosos
junto de técnicas de optimización y búsqueda de los estudios existentes que se centran en proponer
soluciones basados en la teorı́a de la evolución de heurı́sticas para optimizar dichos parámetros con la
Charles Darwin. Inspirados en esta teorı́a, utilizan finalidad de obtener mejores resultados.
una población de individuos, soluciones candidatas En este artı́culo se presenta una alternativa a uno
al problema que pretende resolverse, que tratan de de los operadores utilizados en el proceso de un AG,
adaptarse mediante evolución al entorno para resolver el operador de mutación. Está demostrado que este
el problema en cuestión. operador es necesario para garantizar la convergencia
Dentro de la familia de los AEs se encuentran los del algoritmo evolutivo. Su objetivo es la modifica-
algoritmos genéticos [6] (AGs). Estos nos ofrecen ción del valor de un gen determinado, previamente
técnicas robustas de búsqueda y optimización para seleccionado al azar, perteneciente un individuo. Este
la obtención de resultados en una gran variedad de operador está contralado por el parámetro conoci-
problemas. Por ejemplo, son ampliamente utilizados do como probabilidad de mutación, que determina
en los problemas conocidos como “NP completos”, cuándo se aplica dicha mutación.
donde ofrecen la posibilidad de encontrar soluciones La importancia del operador mutación ha sido
satisfactorias en tiempos razonables. En la actualidad estudiada ampliamente en la literatura, y ha quedado

757
XVIII Conferencia de la Asociación Española para la Inteligencia Artificial

demostrado que sin él no se garantiza la convergencia su acción hacia zonas especı́ficas del cromosoma que
del algoritmo [9]. A pesar de todo, el proceso de puedan ser de mayor interés.
convergencia puede ser lento, dependiendo de la difi- Una de las primeras mejoras para el operador
cultad del problema. Frecuentemente, esta dificultad mutación que se propusieron fue dotar al AG de la
implica el uso de cromosomas de tamaño grande, capacidad de adaptar la probabilidad de mutación es-
y el tamaño del cromosoma afecta a la eficacia tablecida [1], esta técnica es conocida como mutación
del operador de mutación clásico, que selecciona al adaptativa. La idea es simple pero efectiva. Depen-
azar una posición a mutar: cuanto más largo es el diendo del valor de fitness obtenido por los individuos
cromosoma, más tiempo será necesario para poder de la población en las diferentes generaciones, la
mutar alguna posición concreta del mismo. probabilidad se adapta para permitir más o menos
En este artı́culo se presenta una nueva imple- mutaciones, de esta manera cuando el fitness global
mentación para el operador genético mutación, para de la población es malo, cuando el proceso de conver-
problemas en los cuales no existe epistasis entre los gencia se estanca, el AG aumentará la probabilidad de
genes que conforman el cromosoma de un individuo. mutación, con la esperanza de que estas mutaciones
Existe epistasis entre los genes de un individuo mejoren a los individuos, y viceversa, disminuirá la
cuando la expresión de uno o más genes depende de probabilidad de mutación cuando el fitness de los
la expresión de otro gen del mismo individuo. Esta individuos sea buena para no degradar la calidad
interacción sucede cuando la modificación de un gen de la solución. Esta idea también ha sido aplicada
influye de manera directa sobre el valor en uno o con la probabilidad de cruce. Existen propuestas
varios genes diferentes del mismo individuo. más avanzadas dentro de la mutación adaptativa,
La nueva propuesta que se introduce en este traba- por ejemplo en [2] se propone un operador que
jo, que como veremos más adelante es una variación modifica la probabilidad de mutación en función del
de algunos modelos de mutación existente, pretende fitness de los individuos de la población, utilizando
asociar una probabilidad de mutación a cada gen den- para ello el algoritmos k-means. Otro enfoque muy
tro del cromosoma del individuo. Esta probabilidad utilizado dentro de la mutación adaptativa ha sido la
se debe ir actualizado con cada mutación sufrida y va modificación del AG para que en lugar de disponer de
a depender de la influencia que dicha mutación pueda una probabilidad de mutación global, cada individuo
tener sobre el valor del fitness global del individuo. cuente con una propia. Esta idea se ha codificado
Los resultados presentados en este trabajo demues- tradicionalmente con un gen más al principio del
tran que es posible alcanzar mejores soluciones en cromosoma y su cálculo se obtiene al generar un
un tiempo menor de cómputo, ası́ como utilizando número aleatorio dentro de una distribución normal
menores generaciones en el proceso evolutivo. [3]. A lo largo de los años se han utilizado otro
El resto del artı́culo se divide de la siguiente tipo de distribuciones de probabilidad, por ejemplo
forma: en la Sección II se detalla un estado del arte una distribución Levy [4], pero manteniendo la idea
de trabajos anteriores donde se aborda el problema anteriormente descrita.
de mutación dirigida, la Sección III se describe la Entre las técnicas utilizadas para mejorar el ope-
metodologı́a utilizada, los resultados de este trabajo rador genético de mutación se encuentra la que se
se presentan en la Sección IV. Finalmente las con- conoce como mutación dirigida. Ésta, a diferencia
clusiones del mismo se abordan en la Sección V. de la mutación adaptativa, basa su funcionamiento
en guiar al AG hacia mutaciones más beneficio-
II. E STADO DEL ARTE sas, entendiendo como mutaciones más beneficiosas
aquellas que hacen que el valor del fitness de un
La modificación de los diferentes operadores de individuo mejore. En el artı́culo presentado por Di-
un AG es un campo ampliamente estudiado por la nabandhu Bhandari et al [7] se propone un operador
comunidad cientı́fica. Desde el inicio, los investiga- de mutación que, dependiendo del valor de fitnees
dores no han dejado de proponer mejoras para los obtenido en la generaciones anteriores, calcula un
operadores genéticos con la finalidad de obtener AGs punto de mutación para los individuos que integran
que converjan a una solución de forma más rápida. En la población actual.
esta sección nos centraremos en el estudio de posibles En el trabajo presentado por Bäck et al.[8] propone
mejoras del operador de mutación, fijándonos en par- una idea novedosa dentro de la mutación adaptativa.
ticular en versiones del operador que permitan dirigir Se asocia una probabilidad de mutación a cada uno

758
XIII Congreso Español en Metaheurı́sticas y Algoritmos Evolutivos y Bioinspirados

de los genes del cromosoma del individuo. Esta


probabilidad es un valor aleatorio dentro de un rango.
Utilizando esta idea como punto de partida, en este
artı́culo exploramos otras posibilidades, haciendo una
primera implementación de una idea similar.
La mutación dirigida que presentamos más ade-
lante, asocia una probabilidad de mutación a cada
uno de los genes que componen el cromosoma, en
función a la influencia histórica que cada gen ha
tenido sobre la mejora de la calidad del individuo, a lo Figura 1. Ejemplo de codificación del VPM
largo del proceso evolutivo. A diferencia del trabajo
propuesto en [8], esta propuesta tiene en cuenta cómo
del cromosoma (PMG). La suma de todas las proba-
ha evolucionado cada individuo de la población, para
bilidades contenidas en el VPM debe ser siempre 1,
tratar de guiarlo hacia mutaciones más beneficiosas.
ver figura 1, no pudiendo superar ni disminuir este
El operador que se propone dirige las mutaciones
valor en ningún momento del ciclo evolutivo del AG.
a genes concretos del cromosoma, que mejoraran
la calidad del individuo, pero en ningún momento X
T
modifica el valor de probabilidad de mutación del P M Gi = 1 (1)
AG. i=1

donde T es el número de genes del cromosoma


III. P ROPUESTA DEL NUEVO OPERADOR
(Tamaño) y P M Gi es la probabilidad de mutación
MUTACI ÓN
del gen i-ésimo.
En esta sección se describe en detalle el nuevo La actualización del VPM es realizada cada vez
operador genético de mutación propuesto, al cual que un individuo de la población sufre una mutación.
denominamos mutación dirigida, y que se considera Antes de comenzar a explicar en detalle cómo fun-
en el contexto de problemas de codificación binaria ciona el nuevo operador es importante indicar como
sin epistasis. El objetivo es asociar un valor de pro- se inicializan las PMG del VPM para cada individuo
babilidad de mutación a cada gen del cromosoma, y en el proceso de generación de la población inicial.
utilizar estos valores de probabilidad en el proceso de Al generar la población inicial, aún no se tienen
mutación. Este nuevo modelo conlleva la utilización datos del histórico de evolución de la fitness, de ahı́
de un nuevo vector de probabilidades asociado a cada que todas las posiciones del vector VPM de cada
cromosoma, lo que implicará cambios en el operador individuo comienzan con la misma probabilidad, esta
de cruce. Estos cambios serán mı́nimos y solo se es calculada según la expresión 2
utilizan para mantener esta información actualizada
en el proceso de cruce. 1
PMG = (2)
El nuevo operador de mutación dirigida asigna T
diferentes probabilidades de mutación a cada uno de donde T es el tamaño del cromosoma
los genes de cada individuo de la población, valores
que dependerán de la influencia histórica que cada III-A. Mutación
gen ha tenido en la mejora de ese individuo a lo largo Con el vector de probabilidad de mutación inicia-
del proceso evolutivo. lizado, los pasos a realizar por el nuevo operador
Para conocer en cada momento la influencia que de mutación, cada vez que queremos aplicar una
cierto gen ha tenido sobre la calidad del individuo mutación a un individuo, son los siguientes:
que lo contiene, es necesario disponer en la codifi- 1. Comprobar si el individuo debe mutar, esta
cación del individuo de una nueva estructura capaz acción viene determinada por el parámetro pro-
de almacenar dicha información. En nuestro caso se babilidad de mutación (Pm ), presente en la
ha optado por utilizar un vector, denominado vector implementación clásica de cualquier AG.
de probabilidad de mutación (VPM). La Figura 1 2. Haciendo uso del método de selección conoci-
muestra un ejemplo gráfico del nuevo cromosoma. do como ruleta sobre el VPM del individuo,
El vector de probabilidades se encarga de almace- se selecciona el gen que sufrirá la mutación.
nar la probabilidad de mutación asociada a cada gen Esta técnica posibilita que cualquier gen pueda

759
XVIII Conferencia de la Asociación Española para la Inteligencia Artificial

ser seleccionado para sufrir una mutación, fa- Para poder comparar ambos operadores de mu-
voreciendo la selección de aquellos genes con tación se ha utilizado un problema bien conocido
un mayor ı́ndice de probabilidad -PMG- en el dentro de la literatura. El problema escogido ha
VPM. sido el clásico max-one. Se trata de un problema
3. Cálculo de la fitness del individuo antes de de codificación binaria el cual ha sido ejecutado
sufrir la mutación. Hay que recordar, que el utilizando el operador clásico de mutación y el nuevo
proceso de mutación se aplica después del enfoque propuesto en este trabajo. La Tabla IV mues-
cruce, por lo que los individuos recién cruzados tra los resultados de los diferentes experimentos que
no disponen aún de valor de fitness. se han realizado. Como puede observarse, estamos
4. Realizar la mutación del gen seleccionado en particularmente interesados en conocer la utilidad del
el paso anterior y cálculo del nuevo fitness del operador en problemas de tamaño grande: cuando el
individuo. cromosoma del individuo tiene una longitud tal que
5. Actualizar el VPM según el valor resultante, al son necesarias muchas generaciones para encontrar la
comparar el fitness del individuo antes de sufrir solución. Ası́, hemos probado el operador en tamaños
la mutación y después. Para realizar esta ope- que van de 20 hasta 80 bits.
ración se aumentará o disminuirá, una cantidad Para seleccionar un valor alpha adecuado para los
alpha (dependiendo de si la mutación mejoró experimentos, se ha realizado un estudio previo. Con
o no al individuo) la probabilidad asociada a la un tamaño de cromosoma igual a 20 bits se han
posición del gen mutado, y proporcionalmente, realizado 150 ejecuciones para cada uno de lo valores
se disminuirán o aumentará el resto de valores del parámetro alpha que hemos querido probar. De
correspondientes al resto de los genes. La suma esta manera hemos podido determinar el valor alpha
total de los valores del vector debe seguir que menos generaciones necesitaba para converger
siendo uno. Este valor alpha será a partir de a la solución. Como se aprecia en Figura 2, que
ahora un nuevo parámetro del algoritmo. muestra los promedios para 150 ejecuciones de cada
configuración, el valor de alpha que obtiene mejores
III-B. Cruce resultados es 0.1.
El operador genético de cruce también sufre una
modificación con respecto a su implementación clási-
ca, debido a la necesidad de manejar correctamente
los vectores de probabilidad de los individuos.
En el operador cruce clásico one-point crossover
se genera una posición aleatoria del cromosoma que
se utiliza para cruzar los dos padres intercambiando
material genético en los hijos.
El nuevo operador cruce realiza la misma ope-
ración sobre los cromosomas, y además, repite ese
mismo proceso con los PMGs de cada padre; pero
dado que la suma de los PMGs resultantes de los Figura 2. Resultado estudio valor,Alpha, cromosoma tamaño 20
nuevos individuos no tiene porqué ser 1, al finalizar el bits
cruce es necesario realizar una normalización de estos
valores -escalado para que la suma sea 1- para que Una vez seleccionado el valor alpha adecuado, he-
la suma del nuevo VPM resultante de cada individuo mos procedido con los experimentos que se muestran
hijo sea 1. en Tabla IV, de nuevo con 150 ejecuciones de cada
configuración. La Figura 3 muestra la generación me-
IV. E XPERIMENTOS Y RESULTADOS dia que ha tardado el AG en converger a la solución
para cada una de las combinaciones mostradas. Como
En esta sección se describen los experimentos que se puede observar el operador de mutación dirigida
se han realizado para comparar el nuevo operador toma menos generaciones en alcanzar la solución,
genético de mutación que se propone en este trabajo, son necesarias menos generaciones para obtener el
con el operador clásico de mutación en problemas sin mismo resultado que con el operador clásico. Como
epistasis entre los genes de los individuos. se aprecia en la gráfica la ventaja obtenida por

760
XIII Congreso Español en Metaheurı́sticas y Algoritmos Evolutivos y Bioinspirados

Experimento AG Tam. Población. Tam. Cromosoma Num. Generaciones Prob. Mutación Alpha
Ex1 C 10 20 20.000 0.01 -
Ex2 I 10 20 20.000 0.01 0.1
Ex3 C 10 40 20.000 0.01 -
Ex4 I 10 40 20.000 0.01 0.1
Ex5 C 10 60 20.000 0.01 -
Ex6 I 10 60 20.000 0.01 0.1
Ex7 C 10 80 20.000 0.01 -
Ex7 I 10 80 20.000 0.01 0.1
Cuadro I
E XPERIMENTOS REALIZADOS

el nuevo operador respecto al clásico en cuanto al ayudar en la mejora de la calidad del individuo tras
número de generaciones necesarias para obtener una una mutación.
solución aumenta con el tamaño del cromosoma de El nuevo operador asocia una probabilidad de
los individuos de la población. Cuanto el tamaño del mutación a cada gen del individuo, posición dentro
individuo es mayor -la dificultad del problema es del cromosoma, que es proporcional a la influencia
mayor- la diferencia entre la generación media ne- histórica que ha tenido esa posición sobre la mejora
cesaria para alcanzar solución es mayor entre ambas de la calidad del individuo a lo largo del proceso
implementaciones, aportando un mejor rendimiento evolutivo. Ası́, se utiliza un vector de probabilidades
el operador de mutación dirigida. VPM, con una posición por cada gen que existe
La Figura 4 muestra el tiempo medio para alcanzar en el cromosoma PMG, para realizar mutaciones
una solución por ambas implementaciones de los dirigidas sobre genes concretos que probablemente
algoritmos. Al igual que sucede con las generaciones, beneficiarán la calidad del individuo. Este vector de
el tiempo medio necesario para obtener la solución probabilidades es actualizado en cada proceso de
por el operador mutación dirigida es menor que la mutación, con un valor que depende de la mejora
clásica, siendo la diferencia mayor cuanto mayor es (o empeoramiento) que la mutación produce en el
el cromosoma del individuo. nuevo individuo cuando se compara con el individuo
Para tamaño de cromosomas superiores a 80 bits sin mutación.
ambas implementaciones no siempre convergen a la Utilizando el clásico problema max-one, de codi-
solución. Aun ası́, el operador de mutación dirigida ficación binaria y sin epistasis entre los genes del
converge a la solución un número mayor de veces que individuo, hemos comparado el AG clásico con la
el operador clásico (en las 150 ejecuciones realiza- nueva propuesta que utiliza mutación dirigida, con
das). Para un tamaño de cromosoma igual a 120 bits diferentes configuraciones del problema, variando el
el operador clásico ha convergido a la solución en 51 tamaño de las poblaciones, el tamaño de los indivi-
ocasiones mientras que el nuevo operador propuesto duos y la probabilidad de mutación del AG. En todos
lo ha hecho 134. los casos la mutación dirigida ha permitido encontrar
Como decı́amos anteriormente, lo aquı́ mostrado soluciones en menor número de generaciones, con
es un análisis preliminar de una variación del ope- una influencia que crece cuando lo hace el tamaño
rador de mutación dirigida. En próximos trabajos del cromosoma.
pretendemos hacer una comparativa con alguno de los Esperamos poder extender este trabajo, con una
métodos de mutación más cercanos al aquı́ propuesto, comparativa más completa con otros operadores de
y realizar una selección más adecuada de problemas mutación similares, y con un mayor número de
de test, para estudiar con mayor detalle la potenciali- problemas, tanto de codificación binaria como real,
dad del nuevo operador. No obstante, estos resultados para entender mejor el impacto del nuevo operador
preliminares muestran el camino a seguir. de mutación propuesto.
V. C ONCLUSIONES
AGRADECIMIENTOS
Este artı́culo presenta un análisis preliminar de una
nueva versión del operador de mutación adaptado a Agradecemos el apoyo del Ministerio de Eco-
problemas en los que no existe epistasis. El objetivo nomı́a y Competitividad proyecto TIN2017-85727-
de la propuesta es ayudar a determinar en cada mo- C4-{2,4}-P, Junta de Extremadura, Consejerı́a de
mento las posiciones del cromosoma que más pueden Comercio y Economı́a, proyecto IB16035 a través del

761
XVIII Conferencia de la Asociación Española para la Inteligencia Artificial

Figura 3. Resultados al comparar las dos implementaciones por número medio de generaciones necesarias para obtener una solución

Figura 4. Resultados obtenidos al comparar las dos implementaciones por el tiempo medio necesario para obtener una solución.

Fondo Europeo de Desarrollo Regional, “Una manera [5] Back, T. “Evolutionary algorithms in theory and practice:
de hacer Europa”. evolution strategies, evolutionary programming, genetic algo-
rithms,” Oxford university press. 1996
R EFERENCIAS [6] Goldberg, D. E., Holland, J. H. “Genetic algorithms and
machine learning. Machine learning,” 3(2), 95-99, 1988.
[1] Srinivas, M., Patnaik, L. M. “Adaptive probabilities of cros- [7] Bhandari, D., Pal, N. R., Pal, S. K. ”Directed mutation in
sover and mutation in genetic algorithms,” IEEE Transactions genetic algorithms,” Information Sciences, 79(3-4), 251-270.
on Systems, Man, and Cybernetics, 24(4), 656-667, 1994. 1994
[2] Zhang, J., Chung, H. S. H., Lo, W. L. “Clustering-based [8] Bäck, T. “Self-adaptation in genetic algorithms,” In Procee-
adaptive crossover and mutation probabilities for genetic dings of the first european conference on artificial life, 263-
algorithms,” IEEE Transactions on Evolutionary Computation, 271, MIT Press. 1992
11(3), 326-335, 2007 [9] Michalewicz, Z. “Evolution strategies and other methods.,” In
[3] Fogel, D. B., Atmar, J. W. “Comparing genetic operators with Genetic algorithms+ data structures= evolution programs (pp.
Gaussian mutations in simulated evolutionary processes using 159-177). Springer, Berlin, Heidelberg. 2016
linear systems,” Biological Cybernetics, 63(2), 111-114, 1990.
[4] Lee, C. Y., Yao, X. “Evolutionary programming using mu-
tations based on the Lévy probability distribution,” IEEE
Transactions on Evolutionary Computation, 8(1), 1-13, 2004

762
XIII Congreso Español en Metaheurı́sticas y Algoritmos Evolutivos y Bioinspirados

Choosing population sizes to enhance Brain Storm


Optimization algorithms
Ricardo Garcı́a-Ródenas, Luis Jiménez Linares, and Julio Alberto López-Gómez
{Ricardo.Garcia, Luis.Jimenez, JulioAlberto.Lopez}@uclm.es

Abstract—Nature-inspired algorithms (NIA) are a very po- algorithm when it is applied to hybrid functions. On the other
werful tool to solve plenty of complex science and engineering hand, it studies whether is better to use the whole population in
problems. In the last ten years, a new kind of NIA algorithms, the algorithm or only a sample of it, in terms of computational
so-called human-inspired algorithms, has arisen in optimization
tasks obtaining promising results. In this paper, the effect of cost and quality of solutions.
population size in Brain Storm Optimization algorithm (BSO) The rest of the document is structured as follows: section 2
is studied with the purpose of choosing good enough population studies the related work in BSO algorithm. Section 3 describes
sizes which improve its performance. Moreover, it is also analyzed BSO algorithm and ADMBSO algorithm, which is the version
the possibility of using population samples instead of the whole used in the experiments of this paper. Later, section 4 defines
population, studying its performance in terms of time and
computational cost. To do that, hybrid functions of IEEE CEC the experiments carried out and studies the results obtained
competitions have been used as benchmark problems. The results and finally, section 5 introduces the conclusions about this
show that twenty five individuals is a good enough population work and some future works.
size in BSO algorithms while population sampling improves the
performance of the algorithm.
II. R ELATED W ORK
Index Terms—Nature-inspired algorithms, Human-inspired al-
gorithms, Brain storm optimization, Population size, Population
To the best of our knowledge, there are 75 papers, 8 theses
sampling and 5 patents in total on the development and application of
the BSO algorithm. The current research in BSO is concerned
with three main research lines which are the following:
I. I NTRODUCTION
• Study and analysis of the algorithm. In this line, all
Traditionally, complex optimization problems have required studies about new brainstorming operators [10], modifi-
effective and sophisticated methods to deal with them. In this cations [11], clustering methods [12], parameters adjust-
context, Nature-Inspired Algorithms (NIA) appeared in the ment [13], hybridizations [14], etc are grouped.
1960s. One of the main features of NIA algorithms is they • Algorithm’s variants. New variants of brain storm algo-
take their knowledge, contents and procedures departing from rithms are required to solve successfully different com-
nature. Thus, algorithms like Particle Swarm Optimization plex optimization problems like multimodal [15], hybrid
(PSO) [1], Genetic Algorithm (GA) [2] or Ant Colony Op- or multiobjective problems [16], among others.
timization (ACO) [3] among others, have been widely applied • BSO applications. There is a lack of BSO applications to
in operational research. real world problems, although there are many applications
During the last ten years, there has been a change in the source in fields like wireless sensor networks [17], multiple UAV
of inspiration to build NIA algorithms. Nowadays there is a formation flights [18], stock index forecasting [19] and
trend which tries to model the behaviour of humans in problem economic dispatch [20].
solving. Along this line, a new kind of NIA algorithms has
appeared which is called Human-Inspired Algorithms (HIA). III. B RAIN S TORM O PTIMIZATION A LGORITHMS
There are currently six HIA algorithms which are the follow-
Brain Storm Optimization (BSO) algorithm is a human-
ing: Seeker Optimization Algorithm (SOA) [4], Imperialist
inspired algorithm which was born in 2011 and developed by
Competitive Algorithm (ICA) [5] , Social Emotional Opti-
Shi [9]. This NIA algorithm is inspired by the human brain-
mization Algorithm (SEOA) [6], Teaching Learning-Based
storming process. In it, a group of people or brainstorming
Optimization (TLBO) [7], Team Effectiveness Based Opti-
group proposes different ideas to solve a problem. Then, new
mization (TEBO) [8] and Brain Storm Optimization algorithm
ideas are generated from the existing ones in order to reach
(BSO) [9] which is the algorithm used in this paper.
the optimum idea. The brainstorming process ends when an
This paper has two targets: On the one hand, it tries to choose
optimum idea has been achieved.
good enough population sizes in Brain Storm Optimization
This way, brainstorming departs from a set of random ini-
Ricardo Garcı́a-Ródenas, Department of Mathematics at University of tial solutions. After initialization, new ideas are generated
Castilla la Mancha, Spain departing from the existing ones through convergence and
Luis Jiménez Linares, Department of Technology and Information Systems divergence operations. Convergence operation is focused on
of University of Castilla la Mancha, Spain
Julio Alberto López Gómez, Department of Technology and Information searching new solutions in a set of search areas where good
Systems at University of Castilla la Mancha, Spain. solutions are found. Formally, these areas corresponds with

763
XVIII Conferencia de la Asociación Española para la Inteligencia Artificial

local minima in the objective function. To carry out conver- Algorithm 1 Advanced Discussion Mechanism based on BSO
gence operation, cluster analysis techniques have been widely algorithm
applied, using mainly the k−means algorithm. Moreover, 1: P OPULATION I NITIALIZATION : Initialize n random solu-
divergence operation is in charge of building new solutions. In tions in population pop.
brainstorming, new solutions can be generated departing from 2: while Termination Condition is not satisfied do
one or more existing solutions. For simplicity, BSO algorithm 3: Pintra = Plow + Phigh NNmax cur gen
gen
considers only two possibilities: generating a new solution 4: Pinter = 1 − Pintra
departing from one existing solution or two. The first option 5: /* Update ǫ */ max 
iter −n
corresponds with local search in an optimization algorithm and 6: ǫ(t) = logsig 2 iter
∗ random(t)
k
the second is related to exploration. The kind of generation 7: P OPULATION E VOLUTION : Generate n new ideas de-
will be made using a set of probabilities. After BSO, different parting from the current population
variants of the algorithm have appeared with the purpose of 8: BEGIN Converging Operation
improving BSO capabilities and guaranteeing a good tradeoff 9: Group pop in m clusters
between exploration and exploitation. In this paper, Advanced 10: END Converging Operation
Discussion Mechanism based on Brain Storm Optimization 11: for i = 1 to card(pop) do
Algoritm (ADMBSO) [11] is used instead of the original 12: BEGIN Diverging Operation
BSO. ADMBSO has been used since it is the most recent 13: if rand() < Pintra then
and standard version of BSO algorithm. In it, exploration 14: /* Generate individuals from one cluster*/
is encouraged in the first iterations and exploitation in the 15: if rand() < pceni then
last iterations. Moreover, ADMBSO adds different rules to 16: /* Add noise to center of the cluster */
generate new ideas in each epoch in intra and inter cluster 17: cinew = ciold + ǫ(t) ∗ random(t)
generation. On the one hand, inter cluster generation will 18: else if rand() < pindi then
be possible in this algorithm building a new idea from two 19: /*Combine two ideas from this cluster and add
ideas in the same cluster. Briefly, this algorithm is shown in noise */
Algorithm 1. 20: Select xold1 and xold2
21: xinew = (xiold1 − xiold2 ) ∗ random(t)
22: else
IV. E XPERIMENTS 23: /*Add noise to a random idea*/
In this section, the two experiments carried out to choose 24: xinew = xiold + ǫ(t) ∗ random(t)
good enough population sizes in Advanced BSO algorithm 25: end if
(ADMBSO) are described in detail. 26: else
27: /*Generate individuals from two clusters*/
A. Experiment 1: Choosing population size in BSO 28: if rand() < pcenii then
29: /*Select two centroids cold1 , cold2 , combine
The problem of choosing a good enough population size for
them and add noise/*
a NIA algorithm is difficult to address. The reason is because
30: xiold = w1 ∗ ciold1 + w2 ∗ ciold2
it is generally problem-dependent and in general, the settings
31: xinew = (ciold1 − ciold2 ) ∗ random(t)
of one algorithmic parameter could be related to the settings
32: else if rand() < pindii then
of other algorithmic parameters, in terms of optimization
33: /*Generate randomly an idea depart from two
performance. Besides, it depends on the particular version of
individuals of two clusters/*
BSO used, the dimensionality problem and the complexity of
34: Select xold1 and xold2
the search space. That is why, in this experiment, different
35: xiold = w1 ∗ xiold1 + w2 ∗ xiold2
population sizes widely applied in other algorithms have been
36: xinew = (xiold1 − xiold2 ) ∗ random(t)
tested over ADMBSO algorithm and over a set of concrete
37: else
benchmark functions, in this case, hybrid functions from IEEE
38: /* Generate randomly a new idea */
CEC conference competition.
39: end if
In order to recommend good population sizes for BSO algo-
40: end if
rithms, the definition of robustness analysis proposed in [21]
41: END Diverging Operation
is taken. According to that, an optimization algorithm is robust
42: R EPLACE M ECHANISM : If the new solution built is
if inequality
better than the current one, substitute it, otherwise,
|f (x∗alg ) − f (x∗ )| < ǫrel · |f (x∗ )| + ǫabs (1) maintain the current solution
43: /* Update Solution */
holds, where x∗alg is the best value reached by the algorithm, 44: if f (xnew ) < f (xold ) then
x∗ is a global minimum of the objective function f (it is 45: xold = xnew
assumed, given) and ǫrel , ǫabs are two parameters which 46: end if
control the accuracy of the algorithm. 47: end for
Thus, different population sizes can be proposed and tested 48: end while
with different values of ǫabs in order to detect if different

764
XIII Congreso Español en Metaheurı́sticas y Algoritmos Evolutivos y Bioinspirados

population sizes are capable of reaching determined levels


of accuracy. Moreover, the convergence speeds of the same
algorithm with different population sizes can also be compared
using the expression proposed in [21] and shown in equation
2:
N F Epop1
s= (2)
N F Epop2
where s is the convergence speed ratio, N F Epop1 is the
number of functions evaluations which the algorithm with
the population size pop1 needs to satisfy inequality (1) and
N F Epop2 is the same using pop2. To do that, three ǫabs
values have been proposed in order to test the performance
and robustness of different population sizes while ǫrel Fig. 1. Temporal Cost for different population sizes
has been fixed to 10e−4 like in [21]. These values are
ǫabs1 = 10e−1 , ǫabs2 = 10e−3 , ǫabs3 = 10e−5
Moreover, four population sizes have been tried in this convergence speed of different population sizes in comparison
experiment. Firstly, one hundred ideas has been taken as with the population of one hundred individuals (used in [11]
a reference value, since it is used in most of the articles and considered as reference). Note that problems 3 and 4
published in BSO and cited here. After that, and following do not appear in this table because they did not achieve any
the fact that lower values are efficient in other metaheuristics robustness threshold. In this manner, when s values are less
like in PSO, other population sizes have been proposed. Thus, than 1, it means that the proposed configuration is better
pop25 has twenty five ideas or individuals, pop50 has fifty than pop100 taken as reference. If it is greater than 1, the
ideas, pop75 has seventy five individuals and pop100 has one performance of pop100 is better. The best rates are typed in
hundred ideas. The sample of benchmark functions consists bold. It is possible to conclude that all the sizes tested in
of eight objective functions with thirty dimensions taken from this paper are better than p100 used in the most of articles
IEEE CEC conference competitions. They are well-known published about BSO.
optimization problems. In this paper, we have focused on
hybrid functions, which are the most complex benchmarks
TABLE II
in CEC competition. They are the following: rotated hybrid A NALYSIS OF CONVERGENCE SPEED IN ADMBSO ALGORITHM
composition function 1, rotated hybrid composition function
1 with noise in fitness, rotated hybrid composition 2, rotated s1 s2 s3
P1 25 0,86 - -
hybrid composition 2 with a narrow basin for the global P1 50 0,90 - -
optimum, rotated hybrid composition 3, rotated hybrid P1 75 0,93 - -
composition 3 with high condition number matrix, rotated P2 25 - - -
P2 50 0,96 - -
hybrid composition function 4 and rotated hybrid composition P2 75 0,98 - -
function 4 without bounds. These problems are named as P5 25 0,56 - -
P1,P2,...,P8. P5 50 0,75 - -
P5 75 0,99 - -
Then, ADMBSO algorithm has been executed for each
P6 25 0,59 - -
population size using the parameters employed in [11]. The P6 50 1,04 - -
configuration is the following: m = 5, Pcen = 0.7, Pind = P6 75 0,77 - -
0.2, Prnd = 0.1, Pcens = 0.7, Plow = 0.2, Phigh = 0.7. P7 25 0,72 0,95
P7 50 0,82 1,01 1,01
The total number of function evaluations computed in each P7 75 1,09 0,89 0,90
execution is 100000. Ten trials have been run for each P8 25 1,05 1,19 1,17
population size in order to minimize the random effect in the P8 50 0,92 0,64 0,63
P8 75 1,01 0,96 0,94
experiment.
Average values of mean, maximum, minimum, variance and
standard deviation have been obtained for each population B. Experiment 2: Population sampling in BSO
size. The total time spent in all executions is reported too. One solution to improve the quality of population could be
These results are shown in table I. The minimum values for to choose a sample of the population in the search process.
each measure are typed in bold. Thus, it is possible to see It would imply a better initial population but include the
that pop25 needs less time than the rest of populations to problematic of choosing a good sample which combines
achieve its results and it is the population which reaches the good fitness values in the individuals chosen and good ideas
minimum values regarding the rest of population sizes in diversity. Besides, the sampling process adds computational
more test functions. Moreover, figure 1 shows the temporal cost to the algorithm.
cost of each population size for each problem. This way, it is To do that, a multinomial probability distribution can be
possible to see that pop25 provides the best results regarding established according to the fitness values. This way, it will
quality of solution and temporal cost. determine the probability of choosing an individual in the po-
Furthermore, regarding robustness analysis, table II shows the pulation according the fitness values of the whole population.

765
XVIII Conferencia de la Asociación Española para la Inteligencia Artificial

TABLE I
ADMBSO STATISTICAL RESULTS FOR H YBRID CEC BENCHMARK FUNCTIONS

Mean Best Worst Variance Std Time


P1 25 2,93E+02 2,08E+02 1,55E+03 1,79E+04 1,33E+02 1,82E+05
P1 50 2,96E+02 2,21E+02 1,10E+03 1,28E+04 1,13E+02 2,44E+05
P1 75 3,57E+02 1,66E+02 1,06E+03 3,86E+04 1,96E+02 3,68E+05
P1 100 3,38E+02 2,21E+02 1,123E+03 1,54E+04 1,24E+02 7,50E+05
P2 25 3,94E+02 2,81E+02 1,54E+03 3,87E+04 1,96E+02 1,84E+05
P2 50 3,74E+02 2,40E+02 1,21E+03 3,68E+04 1,91E+02 2,46E+05
P2 75 3,76E+02 2,38E+02 1,54E+03 2,93E+04 1,71E+02 3,72E+05
P2 100 3,58E+02 2,21E+02 1,39E+03 2,68E+04 1,64E+02 7,59E+05
P3 25 9,01E+02 9,00E+02 1,45E+03 3,17E+02 1,7E+01 1,84E+05
P3 50 9,00E+02 9,00E+02 1,02E+03 5,70E+01 7,59E+00 2,46E+05
P3 75 8,74E+02 8,57E+02 1,41E+03 1,98E+03 4,45E+01 3,93E+05
P3 100 8,68E+02 8,53E+02 9,06E+02 3,21E+01 1,79E+01 8,17E+05
P4 25 9,00E+02 9,00E+02 9,18E+02 5,39E+00 2,32E+00 1,84E+05
P4 50 8,78E+02 8,66E+02 1,17E+03 2,73E+02 1,65E+01 2,46E+05
P4 75 8,63E+02 8,47E+02 1,39E+03 2,39E+02 4,89E+01 3,74E+05
P4 100 8,82E+02 8,66E+02 1,43E+03 8,33E+02 2,88E+01 7,63E+05
P5 25 7,11E+02 5,15E+02 1,48E+03 7,75E+ 04 2,78E+02 2,33E+05
P5 50 7,43E+02 5,03E+02 1,54E+03 8,17E+04 2,85E+02 3,12E+05
P5 75 8,91E+02 5,99E+02 1,44E+03 8,48E+04 2,91E+02 4,70E+05
P5 100 7,93E+02 5,33E+02 1,48E+03 6,72E+04 2,59E+02 8,99E+05
P6 25 6,64E+02 5,38E+02 2,48E+03 6,65E+04 2,57E+02 2,29E+05
P6 50 8,14E+02 6,69E+02 2,08E+03 5,42E+04 2,32E+02 3.07E+05
P6 75 7,54E+02 5,83E+02 1,91E+03 6,97E+04 2,64E+02 4,60E+05
P6 100 7,93E+02 6,07E+02 1,87E+03 6,90E+04 2,62E+02 9,42E+05
P7 25 4,20E+02 2,29E+02 1,57E+03 1,37E+05 3,70E+02 1,97E+05
P7 50 4,52E+02 2,40E+02 1,53E+03 1,57E+05 3,96E+02 2,64E+05
P7 75 5,25E+02 2,39E+02 1,52E+03 1,97E+05 4,44E+02 3,99E+05
P7 100 4,90E+02 2,39E+02 1,52E+03 1,72E+05 4,15E+02 8,17E+05
P8 25 4,12E+02 2,31E+02 1,65E+03 1,22E+05 3,49E+02 1,98E+05
P8 50 4,03E+02 2,30E+02 1,48E+02 1,31E+05 3,62E+02 2,66E+05
P8 75 4,17E+02 2,37E+02 1,51E+03 1,15E+05 3,40E+02 4,00E+05
P8 100 4,35E+02 2,44E+02 1,525E+03 1,28E+05 3,58E+02 8,15E+05

Thus, the probability of choosing an individual i is computed the population sizes made in experiment 1 in comparison with
through equation. the temporal cost of population sampling.
1
f (i)
P (i) = Pn 1 (3)
j=1 f (j) +ǫ

where n is the population size, f (i) is the fitness value for


individual i and ǫ is a value near to zero to avoid to divide
between 0. In previous experiment pop25 has been chosen as
the best option in terms of population size. Now, ADMBSO
algorithm has been executed using a population of one hundred
individuals, but in this case, only twenty five individuals are
selected to execute the algorithm. The selection mechanism is
based on the multinomial probability distribution.
Now, ADMBSO algorithm with a sampled population of
twenty five individuals have been executed under the same
conditions as Experiment 1. Mean values of mean, minimum, Fig. 2. Temporal Cost with original population sizes and sampling
maximum, variance and standard deviation as well as total
Regarding robustness analysis, table IV shows the conver-
time (in seconds) have been computed. These results are shown
gence speed (s) of sampling population with respect to pop100
in table III. The results which improve the original results of
which was considered as reference. Once again, values which
pop25 are typed in bold.
are equals or better than pop25 convergence speeds are typed
With regard to the results, it can be noted this way of
in bold. The results show that sampling population increase
sampling population improves the original results of pop25 .
the convergence speed of the algorithm in comparison with
Concretely, the major improvements are made in the last two
the original version.
problems which corresponds with the most difficult in CEC
competitions (where pop25 did not improve the results of the
rest of population sizes) and it is now the best configuration. V. C ONCLUSIONS AND FURTHER WORKS
Furthermore, it can be seen that the time is not improved in In this article the problem of choosing good enough popu-
this case. To show that, figure 2 shows the temporal cost of lation sizes in BSO algorithms, has been carried out. To do

766
XIII Congreso Español en Metaheurı́sticas y Algoritmos Evolutivos y Bioinspirados

TABLE III
S TATISTICAL RESULST OF POPULATION SAMPLING

Mean Best Worst Variance Std Time


P1 25 Sam 2,91E+02 2,27E+02 9,11E+02 1,42E+04 1,19E+02 9,49E+05
P2 25 Sam 3,63E+02 2,81E+02 1,12E+02 1,46E+04 1,20E+02 9,68E+05
P3 25 Sam 9,00E+02 9,00E+02 1,29E+03 2,44E+02 1,56E+01 9,97E+05
P4 25 Sam 9,00E+02 9,00E+02 9,84E+01 7,51E+00 2,74E+00 1,29E+06
P5 25 Sam 7,14E+02 5,28E+02 1,56E+02 7,897E+04 2,81E+02 1,14E+06
P6 25 Sam 8,17E+02 6,78E+02 1,76E+03 4,51E+02 2,12E+02 1,21E+06
P7 25 Sam 3,76E+02 2,26E+01 1,64E+03 9,26E+04 3,04E+02 1,07E+06
P8 25 Sam 3,82E+02 2,63E+01 1,604E+02 9,84E+04 3,13E+02 1,24E+05

TABLE IV [3] M. Dorigo, V. Maniezzo, and A. Colorni, “The ant system: Optimiza-
C ONVERGENCE S PEED OF SAMPLING POPULATION tion by a colony of cooperating agents,” IEEE TRANSACTIONS ON
SYSTEMS, MAN, AND CYBERNETICS-PART B, vol. 26, no. 1, pp. 29–
s1 s2 s3 41, 1996.
P1 Sam 0,55 0,88 0,86 [4] C. Dai, Y. Zhu, and W. Chen, “Seeker optimization algorithm,” in
P2 Sam 0 - - Computational Intelligence and Security, Y. Wang, Y.-m. Cheung, and
P3 Sam 0,87 - - H. Liu, Eds. Berlin, Heidelberg: Springer Berlin Heidelberg, 2007, pp.
P4 Sam - - - 167–176.
P7 Sam 0,53 - - [5] E. Atashpaz-Gargari and C. Lucas, “Imperialist competitive algorithm:
P8 Sam 0,95 - - An algorithm for optimization inspired by imperialistic competition,”
P9 Sam 0,70 0,66 0,66 2007 IEEE Congress on Evolutionary Computation, pp. 4661–4667,
P10 Sam 0,85 0,66 0,65 2007.
[6] Z. Cui, Z. Shi, and J. Zeng, “Using social emotional optimization
algorithm to direct orbits of chaotic systems,” in Swarm, Evolutionary,
that, different population sizes have been defined in order to and Memetic Computing, B. K. Panigrahi, S. Das, P. N. Suganthan, and
S. S. Dash, Eds. Berlin, Heidelberg: Springer Berlin Heidelberg, 2010,
study the solutions achieved and the time spent for each size. pp. 389–395.
After that, the best population size has been chosen and an [7] R. Rao, V. Savsani, and D. Vakharia, “Teaching–learning-based opti-
strategy of sampling population has been carried out in order mization: A novel method for constrained mechanical design optimiza-
tion problems,” Computer-Aided Design, vol. 43, no. 3, pp. 303 – 315,
to study if this strategy improves the results of the original 2011.
algorithm. The main conclusions reached are the following: [8] X. Feng, M. Ji, Z. Li, X. Qu, and B. Liu, “Team effectiveness based
optimization,” in 2017 IEEE Congress on Evolutionary Computation
• Despite the fact that one hundred individuals have been
(CEC), June 2017, pp. 2248–2257.
widely used in the majority of articles published about [9] Y. Shi, “Brain storm optimization algorithm,” in Advances in Swarm
BSO algorithms, it has been demonstrated that less in- Intelligence, Y. Tan, Y. Shi, Y. Chai, and G. Wang, Eds. Berlin,
dividuals guarantee better results in terms of quality of Heidelberg: Springer Berlin Heidelberg, 2011, pp. 303–309.
[10] D. Zhou, Y. Shi, and S. Cheng, “Brain storm optimization algorithm with
solution in hybrid functions. modified step-size and individual generation,” in Advances in Swarm
• Sampling population is a good solution to enhance the Intelligence, Y. Tan, Y. Shi, and Z. Ji, Eds. Berlin, Heidelberg: Springer
results of the original algorithm in terms of solutions Berlin Heidelberg, 2012, pp. 243–252.
[11] Y. Yang, Y. Shi, and S. Xia, “Advanced discussion mechanism-based
achieved in the case of hybrid functions. brain storm optimization algorithm,” vol. 19, 10 2015.
• Sampling population strategy speeds up the convergence [12] J. Chen, Y. Xie, and J. Ni, “Brain storm optimization model based
speed of ADMBSO algorithm when it is applied over on uncertainty information,” in 2014 Tenth International Conference on
Computational Intelligence and Security, Nov 2014, pp. 99–103.
hybrid functions.
[13] Z. Zhan, W. Chen, Y. Lin, Y. Gong, Y. Li, and J. Zhang, “Parameter
As future works, these experiments can be applied over investigation in brain storm optimization,” in 2013 IEEE Symposium on
different benchmark functions and new sampling strategies Swarm Intelligence (SIS), April 2013, pp. 103–110.
[14] R. Garcı́a-Ródenas, L. J. Linares, and J. A. López-Gómez, “A cooper-
can be studied in order to reduce the temporal cost of the ative brain storm optimization algorithm,” in 2017 IEEE Congress on
algorithm, as well as speeding up NIA algorithms through Evolutionary Computation (CEC), June 2017, pp. 838–845.
local search procedures in order to guarantee better robustness [15] X. Guo, Y. Wu, and L. Xie, “Modified brain storm optimization algo-
rithm for multimodal optimization,” in Advances in Swarm Intelligence,
thresholds. Y. Tan, Y. Shi, and C. A. C. Coello, Eds. Cham: Springer International
Publishing, 2014, pp. 340–351.
ACKNOWLEDGMENT [16] X. Guo, Y. Wu, L. Xie, S. Cheng, and J. Xin, “An adaptive brain
storm optimization algorithm for multiobjective optimization problems,”
This research was supported by Ministerio de Economı́a, in Advances in Swarm and Computational Intelligence, Y. Tan, Y. Shi,
Industria y Competitividad-FEDER EU grants with number F. Buarque, A. Gelbukh, S. Das, and A. Engelbrecht, Eds. Cham:
Springer International Publishing, 2015, pp. 365–372.
TRA2016-76914-C3-2-P [17] R. Ramadan and A. Khedr, “Brain storming algorithm for coverage and
connectivity problem in wireless sensor network,” 04 2016.
R EFERENCES [18] H. Qiu, H. Duan, and Y. Shi, “A decoupling receding horizon search
approach to agent routing and optical sensor tasking based on brain
[1] Y. Shi and R. C. Eberhart, “A Modified Particle Swarm Optimizer,” storm optimization,” Optik - International Journal for Light and Electron
in Proceedings of IEEE International Conference on Evolutionary Optics, vol. 126, no. 7, pp. 690 – 696, 2015.
Computation. IEEE Computer Society, May 1998, pp. 69–73. [19] J. Wang, R. Hou, C. Wang, and L. Shen, “Improved v -support vector
[2] D. E. Goldberg, Genetic Algorithms in Search, Optimization and Ma- regression model based on variable selection and brain storm optimiza-
chine Learning, 1st ed. Boston, MA, USA: Addison-Wesley Longman tion for stock price forecasting,” Applied Soft Computing, vol. 49, pp.
Publishing Co., Inc., 1989. 164 – 178, 2016.

767
XVIII Conferencia de la Asociación Española para la Inteligencia Artificial

[20] K. R. Ramanand, K. R. Krishnanand, B. K. Panigrahi, and M. K.


Mallick, “Brain storming incorporated teaching–learning–based algo-
rithm with application to electric power dispatch,” in Swarm, Evolution-
ary, and Memetic Computing, B. K. Panigrahi, S. Das, P. N. Suganthan,
and P. K. Nanda, Eds. Berlin, Heidelberg: Springer Berlin Heidelberg,
2012, pp. 476–483.
[21] F. Kang, J. Li, and Z. Ma, “Rosenbrock artificial bee colony algorithm
for accurate global optimization of numerical functions,” Information
Sciences, vol. 181, no. 16, pp. 3508 – 3531, 2011.

768
XIII Congreso Español en Metaheurı́sticas y Algoritmos Evolutivos y Bioinspirados

Distance-based Exponential Probability Models for


Constrained Combinatorial Problems*
* Note: The full contents of this paper have been published in the volume Lecture Notes in Artificial Intelligence 11160 (LNAI 11160)

Josu Ceberio, Alexander Mendiburu Jose A. Lozano


University of the Basque Country UPV/EHU University of the Basque Country UPV/EHU
Donostia, Spain Basque Center for Applied Mathematics (BCAM)
josu.ceberio@ehu.eus Bilbao, Spain

Abstract—Estimation of Distribution Algorithms (EDAs) have


already demonstrated their utility when solving a broad range of
combinatorial problems. However, there is still room for method-
ological improvement when approaching problems with con-
straints. The great majority of works in the literature implement
repairing or penalty schemes, or use ad-hoc sampling methods in
order to guarantee the feasibility of solutions. In any of the pre-
vious cases, the behavior of the EDA is somehow denaturalized,
since the sampled set does not follow the probability distribution
estimated at that step. In this work, we present a general method
to approach constrained combinatorial optimization problems
by means of EDAs. This consists of developing distance-based
exponential probability models defined exclusively on the set of
feasible solutions. In order to illustrate this procedure, we take
the 2-partition balanced Graph Partitioning Problem as a case
of study, and design efficient learning and sampling methods to
use distance-based exponential probability models in EDAs.
Index Terms—Constraint, estimation of distribution algorithm,
distance-based exponential model, Graph Partitioning Problem

769

You might also like