XIII Congreso Español de Metaheuristicas
XIII Congreso Español de Metaheuristicas
XIII Congreso Español de Metaheuristicas
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
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)
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
-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
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
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
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
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.
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
[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
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
505
XVIII Conferencia de la Asociación Española para la Inteligencia Artificial
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
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)
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
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
509
XVIII Conferencia de la Asociación Española para la Inteligencia Artificial
510
XIII Congreso Español en Metaheurı́sticas y Algoritmos Evolutivos y Bioinspirados
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
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
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
517
1
XVIII Conferencia de la Asociación Española para la Inteligencia Artificial
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
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
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
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
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
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
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 . . . . . . . . . . . . . . . . . . . .
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
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
[email protected] [email protected]
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.
527
XVIII Conferencia de la Asociación Española para la Inteligencia Artificial
528
XIII Congreso Español en Metaheurı́sticas y Algoritmos Evolutivos y Bioinspirados
529
XVIII Conferencia de la Asociación Española para la Inteligencia Artificial
530
XIII Congreso Español en Metaheurı́sticas y Algoritmos Evolutivos y Bioinspirados
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
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
536
XIII Congreso Español en Metaheurı́sticas y Algoritmos Evolutivos y Bioinspirados
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
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
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
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
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
550
XIII Congreso Español en Metaheurı́sticas y Algoritmos Evolutivos y Bioinspirados
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].
552
XIII Congreso Español en Metaheurı́sticas y Algoritmos Evolutivos y Bioinspirados
553
XVIII Conferencia de la Asociación Española para la Inteligencia Artificial
554
XIII Congreso Español en Metaheurı́sticas y Algoritmos Evolutivos y Bioinspirados
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
REFERENCIAS
556
XIII Congreso Español en Metaheurı́sticas y Algoritmos Evolutivos y Bioinspirados
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
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
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.
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 .
565
XVIII Conferencia de la Asociación Española para la Inteligencia Artificial
566
XIII Congreso Español en Metaheurı́sticas y Algoritmos Evolutivos y Bioinspirados
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
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
0 0 −0.1
−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
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
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
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
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
572
XIII Congreso Español en Metaheurı́sticas y Algoritmos Evolutivos y Bioinspirados
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.
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
577
XVIII Conferencia de la Asociación Española para la Inteligencia Artificial
Nº
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)
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
582
XIII Congreso Español en Metaheurı́sticas y Algoritmos Evolutivos y Bioinspirados
Personas Detectadas
esta forma, se puede observar como el periodo vacacional de 900
3000 0
Periodo no lectivo
2000 0 1 2 3 4 5 6 7 8 9 10 11 12
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
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
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
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%
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%
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
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%
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%
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
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
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
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
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.
586
XIII Congreso Español en Metaheurı́sticas y Algoritmos Evolutivos y Bioinspirados
587
XVIII Conferencia de la Asociación Española para la Inteligencia Artificial
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
591
XVIII Conferencia de la Asociación Española para la Inteligencia Artificial
592
XIII Congreso Español en Metaheurı́sticas y Algoritmos Evolutivos y Bioinspirados
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
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
595
XVIII Conferencia de la Asociación Española para la Inteligencia Artificial
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)
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
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).
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
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
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
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.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
3.8 0.1
crece hasta un valor máximo (cuando α≥3) a partir del cual
Desviación media
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).
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
80 2
Número Reparaciones
604
XIII Congreso Español en Metaheurı́sticas y Algoritmos Evolutivos y Bioinspirados
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
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
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
613
XVIII Conferencia de la Asociación Española para la Inteligencia Artificial
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′
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
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
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
621
XVIII Conferencia de la Asociación Española para la Inteligencia Artificial
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
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
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
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
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
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
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
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
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
640
XIII Congreso Español en Metaheurı́sticas y Algoritmos Evolutivos y Bioinspirados
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
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
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
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—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
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
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
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
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.
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
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
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
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
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
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
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
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
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
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
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
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
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.
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 .
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
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
691
XVIII Conferencia de la Asociación Española para la Inteligencia Artificial
692
XIII Congreso Español en Metaheurı́sticas y Algoritmos Evolutivos y Bioinspirados
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
Natalio Krasnogor
School of Computing
Newcastle University
Newcastle, U.K.
[email protected]
697
XVIII Conferencia de la Asociación Española para la Inteligencia Artificial
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
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
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
702
XIII Congreso Español en Metaheurı́sticas y Algoritmos Evolutivos y Bioinspirados
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
Email: [email protected]
‡ Departamento de Teorı́a de la Señal y Comunicaciones, Universidad de Alcalá, Alcalá de Henares 28805.
Email: [email protected]
§ Centro de Investigación en Tecnologı́as de la Información, Universidad de Granada, Granada 18071
Email: [email protected]
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.
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
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
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
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
711
XVIII Conferencia de la Asociación Española para la Inteligencia Artificial
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
r
la densidad de los huesos puede cambiar por muchos motivos Optimización E
m
is
o
Cámara /
etc). Otro motivo importante es el hecho de que muchos Contexto y conocimiento experto Generador rayos X
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]
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
mRPD
Rotula
40
C. Resultados 20
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
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.
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
Tabla II 700
(Cells/Field)
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)
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)
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
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
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).
729
XVIII Conferencia de la Asociación Española para la Inteligencia Artificial
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 (%)
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
Values
Values
200 200 200
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
732
XIII Congreso Español en Metaheurı́sticas y Algoritmos Evolutivos y Bioinspirados
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
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.
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
738
XIII Congreso Español en Metaheurı́sticas y Algoritmos Evolutivos y Bioinspirados
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
●●
●
●
●●
● ●
●
●●
● ● ●
●
● ●
●●
● ●
● ● ● ● ●● ●
●
●
● ●
●
●●
●
●●
●
● ● ●● ● ● ● ● ● ●
● ●● ● ●
of the attraction basins. Surprisingly, the average number ●
●
● ●
●
●
●
●
●
●
● ● ●
● ● ●
● ● ●
●
● ●●●●●
●
● ●●
● ● ●●
●● ● ●
● ●● ● ●
●
● ●●
● ●● ● ●
●
●
●
●●
●●
●
●
●
● ● ● ● ● ●● ● ● ●
●
●●
●●
●
●
●
● ●
●
●●
●● ●
●● ● ● ●
● ●
● ●● ● ● ●●
●● ● ● ● ●●● ● ● ●
●● ●
● ● ●
●
● ●● ● ● ●● ● ● ● ● ● ● ● ●
●
● ● ●● ● ● ●
● ●
● ●
● ●
●
●
●● ●
●
● ● ●
● ●
basin. The solutions that are far from the local optimum have
●
●●●●
●
● ● ●●●
●
●●
●● ●
● ●
● ●●
●
●●
●
●
●
●
●●
●
●
●●
●●
●
●●
●
● ●
●●
●
●●
●
●
●
●●●
●●
● ●● ●
●
●●
● ●
●●● ● ●
●
●
●●
●● ●●
●●
● ●
●
● ●
●
●
●●●
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. ●
●
● ●
●●
● ●●
●
●● ●
●●
●
●
● ●●●
●●
●●
●
●●●
●
●●
●
●●●●
●●●
●
●●
●
●
●
●
● ●
●●●
●
● ●●
● ●●
●
● ● ● ● ● ●
●●
●
●
740
XIII Congreso Español en Metaheurı́sticas y Algoritmos Evolutivos y Bioinspirados
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
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
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
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
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
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.
754
XIII Congreso Español en Metaheurı́sticas y Algoritmos Evolutivos y Bioinspirados
755
XVIII Conferencia de la Asociación Española para la Inteligencia Artificial
756
XIII Congreso Español en Metaheurı́sticas y Algoritmos Evolutivos y Bioinspirados
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
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
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
765
XVIII Conferencia de la Asociación Española para la Inteligencia Artificial
TABLE I
ADMBSO STATISTICAL RESULTS FOR H YBRID CEC BENCHMARK FUNCTIONS
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) +ǫ
766
XIII Congreso Español en Metaheurı́sticas y Algoritmos Evolutivos y Bioinspirados
TABLE III
S TATISTICAL RESULST OF POPULATION SAMPLING
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
768
XIII Congreso Español en Metaheurı́sticas y Algoritmos Evolutivos y Bioinspirados
769