Técnicas de optimización paralelas : esquema híbrido basado en hiperheurísticas y computación evolutiva
Autor
Segura González, CarlosFecha
2014Resumen
Optimisation is the process of selecting the best element fr
om a set of available
alternatives. Solutions are termed good or bad depending on
its performance for a
set of objectives. Several algorithms to deal with such kind
of problems have been
defined in the literature. Metaheuristics are one of the most
prominent techniques.
They are a class of modern heuristics whose main goal is to com
bine heuristics in
a problem independent way with the aim of improving their per
formance. Meta-
heuristics have reported high-quality solutions in severa
l fields. One of the reasons
of the good behaviour of metaheuristics is that they are defin
ed in general terms.
Therefore, metaheuristic algorithms can be adapted to fit th
e needs of most real-life
optimisation. However, such an adaptation is a hard task, and
it requires a high
computational and user effort.
There are two main ways of reducing the effort associated to th
e usage of meta-
heuristics. First, the application of hyperheuristics and
parameter setting strategies
facilitates the process of tackling novel optimisation pro
blems and instances. A
hyperheuristic can be viewed as a heuristic that iterativel
y chooses between a set
of given low-level metaheuristics in order to solve an optim
isation problem. By
using hyperheuristics, metaheuristic practitioners do no
t need to manually test a
large number of metaheuristics and parameterisations for d
iscovering the proper
algorithms to use. Instead, they can define the set of configur
ations which must
be tested, and the model tries to automatically detect the be
st-behaved ones, in
order to grant more resources to them. Second, the usage of pa
rallel environments
might speedup the process of automatic testing, so high qual
ity solutions might be
achieved in less time.
This research focuses on the design of novel hyperheuristic
s and defines a set of
models to allow their usage in parallel environments. Differ
ent hyperheuristics for
controlling mono-objective and multi-objective multi-po
int optimisation strategies
have been defined. Moreover, a set of novel multiobjectivisa
tion techniques has
been proposed. In addition, with the aim of facilitating the
usage of multiobjectivi-
sation, the performance of models that combine the usage of m
ultiobjectivisation
and hyperheuristics has been studied.
The proper performance of the proposed techniques has been v
alidated with a
set of well-known benchmark optimisation problems. In addi
tion, several practical
and complex optimisation problems have been addressed. Som
e of the analysed
problems arise in the communication field. In addition, a pac
king problem proposed
in a competition has been faced up. The proposals for such pro
blems have not
been limited to use the problem-independent schemes. Inste
ad, new metaheuristics,
operators and local search strategies have been defined. Suc
h schemes have been
integrated with the designed parallel hyperheuristics wit
h the aim of accelerating the
achievement of high quality solutions, and with the aim of fa
cilitating their usage.
In several complex optimisation problems, the current best
-known solutions have
been found with the methods defined in this dissertation. Los problemas de optimización son aquellos en los que hay que elegir cuál es la solución más adecuada entre un conjunto de alternativas. Actualmente existe una gran cantidad de algoritmos que permiten abordar este tipo de problemas. Entre ellos, las metaheurísticas son una de las técnicas más usadas. El uso de metaheurísticas ha posibilitado la resolución de una gran cantidad de problemas en diferentes campos. Esto se debe a que las metaheurísticas son técnicas generales, con lo que disponen de una gran cantidad de elementos o parámetros que pueden ser adaptados a la hora de afrontar diferentes problemas de optimización. Sin embargo, la elección de dichos parámetros no es sencilla, por lo que generalmente se requiere un gran esfuerzo computacional, y un gran esfuerzo por parte del usuario de estas técnicas. Existen diversas técnicas que atenúan este inconveniente. Por un lado, existen varios mecanismos que permiten seleccionar los valores de dichos parámetros de forma automática. Las técnicas más simples utilizan valores fijos durante toda la ejecución, mientras que las técnicas más avanzadas, como las hiperheurísticas, adaptan los valores usados a las necesidades de cada fase de optimización. Además, estas técnicas permiten usar varias metaheurísticas de forma simultánea. Por otro lado, el uso de técnicas paralelas permite acelerar el proceso de testeo automático, reduciendo el tiempo necesario para obtener soluciones de alta calidad. El objetivo principal de esta tesis ha sido diseñar nuevas hiperheurísticas e integrarlas en el modelo paralelo basado en islas. Estas técnicas se han usado para controlar los parámetros de varias metaheurísticas evolutivas. Se han definido diversas hiperheurísticas que han permitido abordar tanto problemas mono-objetivo como problemas multi-objetivo. Además, se han definido un conjunto de multiobjetivizaciones, que a su vez se han beneficiado de las hiperheurísticas propuestas. Las técnicas diseñadas se han validado con algunos de los problemas de test más ampliamente utilizados. Además, se han abordado un conjunto de problemas de optimización prácticos. Concretamente, se han tratado tres problemas que surgen en el ámbito de las telecomunicaciones, y un problema de empaquetado. En dichos problemas, además de usar las hiperheurísticas y multiobjetivizaciones, se han definido nuevos algoritmos, operadores, y estrategias de búsqueda local. En varios de los problemas, el uso combinado de todas estas técnicas ha posibilitado obtener las mejores soluciones encontradas hasta el momento.