Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Introducción A Los Algoritmos Metaheurísticos
Introducción A Los Algoritmos Metaheurísticos
Metaheurísticos
Francisco Herrera
Grupo de Investigación
“Soft Computing and Intelligent Information Systems”
1
Introducción a los Algoritmos
Metaheurísticos
2
Introducción a los Algoritmos
Metaheurísticos
6
Resolución de Problemas Mediante
Algoritmos de Búsqueda: Introducción
7
Resolución de Problemas Mediante
Algoritmos de Búsqueda: Introducción
10
Funcionamiento de las Metaheurísticas
11
Funcionamiento de las Metaheurísticas
Búsqueda local
Explotación
Intensificación
Búsqueda global
Exploración
Diversificación
12
Funcionamiento de las Metaheurísticas
13
Clasificación de las Metaheurísticas
Uso de memoria
Fuente de inspiración
14
Clasificación de las Metaheurísticas
15
Clasificación de las Metaheurísticas
16
Clasificación de las Metaheurísticas
17
Clasificación de las Metaheurísticas
18
Clasificación de las Metaheurísticas
Basadas en trayectorias
global
local
19
Clasificación de las Metaheurísticas
20
Clasificación de las Metaheurísticas
Basadas en poblaciones
I am at the
I am not at the top. top
My high is better! Height is ...
I will continue
21
Clasificación de las Metaheurísticas
Basadas en poblaciones
22
Clasificación de las Metaheurísticas
23
Clasificación de las Metaheurísticas
24
Ejemplo: El problema del viajante de comercio
17! (3.5568734e14)
soluciones posibles
Solución óptima:
Coste=226.64
26
Viajante de Comercio
30
Aplicaciones
Control de procesos
Clasificación químicos
Optimización
estructural Aprendizaje
Generación de
trayectorias
Planificación de
No se puede mostrar la
imagen. Puede que su equipo
no tenga suficiente memoria
sistemas de Producción
para abrir la imagen o que ésta
esté dañada. Reinicie el equipo
y, a continuación, abra el
archivo de nuevo. Si sigue
apareciendo la x roja, puede
1
e insertarla de nuevo.
n 1 2 m
31
Aplicaciones
DOMINIOS DE APLICACIÓN
Optimización combinatoria
Optimización en ingeniería
Planificación y control
Vida artificial
Bioinformática
…. 32
Lecturas
http://sci2s.ugr.es/docencia/metaheuristicas.php 33
Introducción a los Algoritmos
Metaheurísticos
Término “LOCAL”
36
Búsqueda Local y Estructura de Entorno
Término “LOCAL”
N (σ1 ) N (σ 2 )
N (σ 0 ) N (σ 4 )
σ1 σ2
σ3 σ4
Solución inicial σ0
Óptimo local/global
N (σ 3 )
37
Búsqueda Local y Estructura de Entorno
Estructura de Entorno
38
Búsqueda Local y Estructura de Entorno
39
Búsqueda Local y Estructura de Entorno
Aceptación de soluciones mejores que la actual
Aceptación de soluciones
peores que la actual
41
Búsqueda Local y Estructura de Entorno
Aceptación de soluciones mejores que la actual
Aceptación de soluciones
peores que la actual
44
Características de Diferentes Algoritmos
de Búsqueda Basada en Trayectorias
SOLUCIONES: 3 opciones para salir de los óptimos locales
45
Búsqueda Basada en Múltiples Trayectorias:
Modelos Multiarranque
Modelos Multiarranque
Métodos constructivos de la solución inicial
• Construcción greedy: Algoritmos GRASP
• Algoritmos Basados en Colonias de Hormigas: ACO
Algoritmo ILS
47
Búsqueda Local Iterativa: ILS
H.R. Lourenço, O.C. Martin, T. Stützle, Iterated Local Search. En: F.Glover, G.
Kochenberger (Eds.), Handbook of Metaheuristics. Kluwer Academic Publishers,
2003, pp. 321-353.
H.H. Hoos, T. Stützle. Stochastic Local Search. Morgan Kaufmann, 2004.
48
Búsqueda Local Iterativa: ILS
Comienzo-ILS
So Generar-Solución-Inicial
S Búsqueda Local (So)
Repetir
S’ Modificar (S, historia) %Mutación
S’’ Búsqueda Local (S’)
S Criterio-Aceptación (S, S’’, historia)
Actualizar (S, Mejor_Solución)
Hasta (Condiciones de terminación)
Devolver Mejor_Solución
Fin-ILS
Modelo General del Algoritmo ILS 50
Lecturas
K.A. Dowsland, B.A. Díaz. Diseño de Heurísticas y Fundamentos del Recocido Simulado.
Revista Iberoamericana de Inteligencia Artificial 19 (2003) 93-102.
B. Suman, P. Kumar. A survey of simulated annealing as a tool for single and
multiobjective optimization. Journal of the Operational Research Society 57:10 (2006)
1143-1160.
F. Glover, B. Melián. Búsqueda Tabú. Revista Iberoamericana de Inteligencia Artificial 19
(2003) 29-48.
M. Gendreau. Chapter 2: An Introduction to Tabu Search. In: F. Glover, G.A.
Kochenberber, (Eds.). Handbook of Metaheuristics. Kluwer Academics. (2003) 37-54.
M.G.C. Resende, C.S. Ribeiro. Chapter 8: Greedy Randomized Adaptive Search
Procedure. In: F. Glover, G.A. Kochenberber, (Eds.). Handbook of
Metaheuristics. Kluwer Academics. (2003) 221-249.
R. Martí. Chapter 12: Multi-Start Methods. In: F. Glover, G.A. Kochenberber,
(Eds.). Handbook of Metaheuristics. Kluwer Academics. (2003) 355-368.
H.L. Lourenço, O.C. Martin, T. Stützle. Chapter 11: Iterated Local Search. In: F.
Glover, G.A. Kochenberber, (Eds.). Handbook of Metaheuristics. Kluwer
Academics. (2003) 321-353.
P. Hansen, N. Mladenovic. Chapter 6: Variable Neighborhood Search. In: F.
Glover, G.A. Kochenberber, (Eds.). Handbook of Metaheuristics. Kluwer
Academics. (2003) 145-184.
http://sci2s.ugr.es/docencia/metaheuristicas.php 51
Introducción a los Algoritmos
Metaheurísticos
Definición Inspiración
Swarm Biológica
Intelligence Sociedades de
Insectos
Contextualización
Técnicas Comentarios
Finales
53
Introducción: Swarm Intelligence
sociedades de insectos
(bees, wasps, ants, termites)
(abejas, avispas, hormigas, termitas)
flocks of birds
(bandadas de aves)
schools of fish
(bancos de peces) herds of mammals
(manadas de mamíferos) 55
De las Sociedades de Insectos
a los Sistemas Inteligentes de Enjambre
Insectos
56
De las Sociedades de Insectos
a los Sistemas Inteligentes de Enjambre
Comportamiento emergente
Las colonias de insectos llevan a cabo actuaciones de nivel
complejo de forma inteligente, flexible y fiable, actuaciones
que no serían factibles si tuviesen que ser realizadas por
un insecto de forma individual (éstos son no inteligentes,
no fiables, simples).
Los insectos siguen reglas simples, y utilizan comunicación
local simple
La estructura global (nido) emerge desde las acciones de
los insectos (las cuales son no fiables atendidas
individualmente)
57
De las Sociedades de Insectos
a los Sistemas Inteligentes de Enjambre
Cooperación de la
Abejas colmena
Regulan la temperatura
de la colmena
Eficiencia vía
especialización: división
de la labor en la colonia
Comunicación: Las
fuentes de comida son
explotadas de acuerdo a
la calidad y distancia
desde la colmena
58
De las Sociedades de Insectos
a los Sistemas Inteligentes de Enjambre
59
De las Sociedades de Insectos
a los Sistemas Inteligentes de Enjambre
60
De las Sociedades de Insectos
a los Sistemas Inteligentes de Enjambre
Características de un Enjambre
Flexible
Puede responder a cambios externos
Percepción del entorno (sentidos)
No existe un modelo explícito de entorno/abilidad para
cambiarlo
62
De las Sociedades de Insectos
a los Sistemas Inteligentes de Enjambre
Resumen
La complejidad y sofisticación de la auto-organización se
lleva a cabo sin un lider/jefe de la sociedad
65
Ant Colony Optimization
Experimento con Hormigas reales. Como encuentran el
camino mínimo (159 segundos)
66
Particle Swarm Optimization
67
Particle Swarm Optimization
25
Particle Swarm
Optimization (PSO) aplica 20
conceptos de interacción
pbest
social a la resolución de
problemas de búsqueda/ 15
optimización.
v(k)
10 v(k+1)
En PSO, un enjambre de
n individuos se comunica
directa o indirectamente 5 gbest
con otros vía las
direcciones de búsqueda. 5 10 15 20 25
68
Particle Swarm Optimization
70
Comentarios Finales
SI
MAS
AI
AI - Artificial Intelligence
MAS - Multi Agent Systems
SI - Swarm Intelligence
72
Comentarios Finales
Bibliografía
http://sci2s.ugr.es/docencia/metaheuristicas.php 74
Introducción a los Algoritmos
Metaheurísticos
Introducción
Evolución Natural
Evolución Artificial
Contexto
Comentarios Finales
76
INTRODUCCIÓN
COMPUTACION EVOLUTIVA
77
EVOLUCIÓN NATURAL
79
EVOLUCIÓN NATURAL
80
EVOLUCIÓN NATURAL
81
EVOLUCIÓN ARTIFICIAL
LA METÁFORA
EVOLUCIÓN RESOLUCIÓN
DE PROBLEMAS
82
EVOLUCIÓN ARTIFICIAL
t reproducción t+1
selección
RECOMBINACIÓN
OPTATIVA
mutación
recombinación
LOS INGREDIENTES
83
EVOLUCIÓN ARTIFICIAL
antes 1 1 1 1 1 1 1
después 1 1 1 0 1 1 1
gen mutado
La mutación suele ocurrir con probabilidad pm
para cada gen
EVOLUCIÓN ARTIFICIAL
Población: ...
Cada cromosoma se trocea en n partes las cuales
son recombinadas. (Ejemplo para n=1)
corte corte
padres
1 1 1 1 1 1 1 0 0 0 0 0 0 0
1 1 1 0 0 0 0 0 0 0 1 1 1 1
descendientes
85
EVOLUCIÓN ARTIFICIAL
Selección
PADRES
Recombinación
El ciclo de
la Mutación
Evolución
POBLACIÓN
Reemplazamiento
DESCENDIENTES
86
EVOLUCIÓN ARTIFICIAL
Inventors of
Evolution
Estrategias de Evolución que enfatizan los Strategies
cambios de comportamiento al nivel de los
individuos. 1964, Technische Universität Berlin Hans-Paul Schwefel
Ing. Ingo Rechenberg
Bionics & Evolutiontechnique
Universität Dortmund Technical University Berlin
http://www.bionik.tu-berlin.de/
Algoritmos Meméticos
88
EVOLUCIÓN ARTIFICIAL
89
CONTEXTUALIZACIÓN
COMPUTACIÓN INTELIGENTE
TAXONOMÍA
COMPUTATIONAL
INTELLIGENCE
or
SOFT COMPUTING
COMPORTAMIENTO
91
COMENTARIOS FINALES
VENTAJAS
Soluciones interpretables
92
COMENTARIOS FINALES
DESVENTAJAS
93
COMENTARIOS FINALES
RESUMEN
95
Lecturas
Thomas Bäck, Ulrich Hammel, Hans-Paul Schwefel. Evolutionary Computation: Comments
on the History and Current State. IEEE Transactions on Evolutionary Computation 1:1
(1997) 3-17.
C. Reeves. Chapter 3: Genetic Algorithms. In: F. Glover, G.A. Kochenberber, (Eds.).
Handbook of Metaheuristics. Kluwer Academics. (2003) 55-82.
F. Herrera, M. Lozano, A.M. Sánchez. A Taxonomy for the Crossover Operator for Real-
Coded Genetic Algorithms: An Experimental Study. International Journal of Intelligent
Systems 18 (2003) 309-338R.
Storn, K. Price. Differential Evolution – A Simple and Efficient Heuristic for Global
Optimization over Continuous Spaces. Journal of Global Optimization 11 (1997) 341-359.
http://sci2s.ugr.es/docencia/metaheuristicas.php 96
Introducción a los Algoritmos
Metaheurísticos
Algoritmos Metaheurístico
Genérico
Algoritmos Especializados
Dominio de Problemas
98
Limitaciones de los Algoritmos de
Metaheurísticos
No Free Lunch Theorem (1995):
"...for any algorithm, any elevated performance over one class of problems is
exactly paid for in performance over another class. Wolpert and Macready (1997)
∑ f
E (c / f , m, a ) = ∑ f
E (c / f , m, b)
+ =
100
Limitaciones los Algoritmos de
Metaheurísticos
A1 A1
A3 A2
A2
A3
Dominio de Problemas
101
Limitaciones los Algoritmos de
Metaheurísticos
102
Limitaciones los Algoritmos de
Metaheurísticos
Algoritmosevolutivos son
buenos exploradores
Algoritmos de búsqueda
local son malos
exploradores
Algoritmosevolutivos son
Búsqueda global
malos explotadores
Exploración
Algoritmos de búsqueda
local son buenos
explotadores Búsqueda local
Explotación
105
Algoritmos Híbridos: Poblaciones vs
Trayectorias
Fiabilidad
AMs precisión
Balance entre
Búsqueda Global y Local
Robustos
(específicos para cada problema)
106
Algoritmos Híbridos: Poblaciones vs
Trayectorias
Algoritmos Meméticos
MUTACIÓN
Nuevo
Agente 1 Agente 1
Nuevo
Agente 2 Agente 2
107
Algoritmos Híbridos: Poblaciones vs
Trayectorias
Uso de Conocimiento:
Otras Hibridaciones
Algoritmos Meméticos
108
Algoritmos Híbridos: Poblaciones vs
Trayectorias
2. Mejorar Todas
Repetir hasta completar P
Actualizar
Actualizar R1
R2
http://sci2s.ugr.es/docencia/metaheuristicas.php 110
Introducción a los Algoritmos
Metaheurísticos
112
Búsquedas Basadas en Trayectorias/Entornos
113
Búsquedas Basadas en Trayectorias/Entornos
114
Búsquedas Basadas en Trayectorias/Entornos
115
Búsquedas Basadas en Poblaciones
116
Introducción a los Algoritmos
Metaheurísticos
118
Diversidad vs. Convergencia
Convergencia
Equilibrio D/C
Diversidad 119
Diversidad vs. Convergencia
120
Problemas Multimodales
Es decir, una solución domina a otra si es mejor o igual en todos los objetivos
y al menos mejor en uno de ellos.
Todos los vectores de decisión que no son dominados por ningún otro vector
se llaman pareto-optimales o no-dominados.
Bibliografía
K. Deb, Multi-Objective Optimization using Evolutionary Algorithms. John Wiley &
Sons, 2001.
C.A. Coello, D.A. Van Veldhuizen, G.B. Lamont, Evolutionary Algorithms for
Solving Multi-Objective Problems. Kluwer Academic Pub., 2002. 122
Problemas Multiobjetivo
x : vector solución
Frontera del Pareto
Objetivo T(x)
Soluciones No-Dominadas
(Puntos de la Frontera
del Pareto)
Soluciones Dominadas
(punto interior)
Objetivo Q(x)
123
Algoritmos Metaheurísticos Paralelos
Bibliografía
E. Alba (Ed.), Parallel Metaheuristics. A New Class of
Algorithms. Wiley-Interscience, 2005.
124
Coevolución
Species 1 Species 2
Evolutionary Evolutionary
Algorithm Algorithm
Population Population
1 2
1 2
1 2
1
2
1 1 2
Cooperators Cooperators
1 . .. 2 . ..
125
Lecturas
C.A. Coello, D.A. Van Veldhuizen, G.B. Lamont, Evolutionary Algorithms for Solving Multi-
Objective Problems. Kluwer Academic Publishers, 2007.
E. Alba (Ed.), Parallel Metaheuristics. A New Class of Algorithms. Wiley-Interscience,
2005.
B. Sareni and L. Krähenbühl. Fitness Sharing and Niching Methods Revisited. IEEE
Transactions on Evolutionary Computation, vol. 2, No. 3, September 1998, pp. 97-106.
E. Pérez, F. Herrera and C. Hernández. Finding multiple solutions in job shop scheduling
by niching genetic algorithms. Journal of Intelligent Manufacturing 14, 2003, pp.
323-339.
K. Deb, A. Pratap, S. Agarwal and T. Meyarivan. A Fast and Elitist Multiobjective Genetic
Algorithm: NSGA-II. IEEE Transactions on Evolutionary Computation 6:2 (2002)
182-197.
E. Zitzler, L. Thiele, M. Laumanns, C.M. Fonseca, and V. Grunert da Fonseca.
Performance Assessment of Multiobjective Optimizers: An Analysis and Review. IEEE
Transactions on Evolutionary Computation 7:2, April, 2003, pp. 117 - 132.
M. Potter and K. D. Jong. Cooperative coevolution: an architecture for evolving coadapted
subcomponents. Evolutionary Computation, 8(1):1–29, 2000.
http://sci2s.ugr.es/docencia/metaheuristicas.php
126
Introducción a los Algoritmos
Metaheurísticos
http://sci2s.ugr.es/docencia/metaheuristicas.php 129
Extended Deadline: December 10, 2009
http://www.iea-aie2010.org
130