Optimización basada en cúmulo (enjambre) de partículas Hugo Jair Escalante Seminario de...
-
Upload
adoracion-ruan -
Category
Documents
-
view
227 -
download
1
Transcript of Optimización basada en cúmulo (enjambre) de partículas Hugo Jair Escalante Seminario de...
Optimización basada en cúmulo (enjambre) de partículas
Hugo Jair EscalanteSeminario de optimización multi-objetivo
Tonantzintla, Puebla Noviembre 23, 2012
2
Contenido• Introducción
• Heurísticas inspiradas en metáforas– Comentario al margen
• PSO: Optimización basada en cúmulo de partículas– Relevancia/presencia de PSO– Algoritmo base– Parámetros de PSO
• PSO Multi-objetivo
• Comentarios finales
3
Heuristics!, Patient rules of thumb, so often scorned: Sloppy! Dumb! Yet, slowly, common sense become. [Judea Pearl 1984]
4
Optimización heurística
• Métodos exactos: Proporcionan el óptimo pero suelen ser muy costosos
• Métodos heurísticos: Son rápidos pero no garantizan encontrar el óptimo
• Métodos heurísticos son adecuados para abordar problemas:– Complejos, que son difíciles de resolver con métodos
tradicionales/exactos– Donde la función objetivo no es derivable– Donde la función objetivo es no convexa, presenta muchos mínimos
locales o esta dominada por vallesEn lo posible, siempre es preferible usar métodos exactos
5
Heurísticas inspiradas en metáforas
6
Heurísticas inspiradas en metáforas
• Métodos de optimización heurística inspirados en metáforas son muy comunes hoy en día (e.g., GA, SA, ACO, PSO, TS, GRASP, SS)
• Cada día se publican artículos con mejoras a heurísticas establecidas, o bien, nuevas heurísticas para optimización
• Este tipo de métodos ha contribuido de manera importante al área de optimización
7
Heurísticas inspiradas en metáforas
• Métodos de optimización heurística inspirados en metáforas son muy comunes hoy en día (e.g., GA, SA, ACO, PSO, TS, GRASP, SS)
• Cada día se publican artículos con mejoras a heurísticas establecidas, o bien, nuevas heurísticas para optimización
• Este tipo de métodos ha contribuido de manera importante al área de optimización
8
Heurísticas “novedosas”
• Desde hace algún tiempo, nuevas heurísticas se proponen con base en procesos que a primera vista tienen muy poco que ver con optimización
• No se toma en cuenta en tipo de problema que se aborda, su estructura o la forma en que un humano inteligente resolvería el problema
• Aunque de algunas estás técnicas han obtenido resultados aceptables y han avanzado el estado del arte en optimización, existen muchas otras heurísticas “novedosas” que podrían representar un retroceso para el área de optimización heurística (SIN GENERALIZAR)
K. Sorensen. Metaheuristics – The Methapor Exposed. 2012 (Draft, tutorial - Euro2012)
9
• Nuevos métodos toman a otros procesos como analogía:– A new fruit fly optimization algorithm – Shuffled frog leaping algorithm– The reincarnation algorithm– Intelligent water drop– Fly algorithm– Bat algorithm– Bees & honey-bee mating algorithms– Harmony search – …..
Este es el problema
Heurísticas inspiradas en metáforas
10
The imperialist competitive algorithm
http://en.wikipedia.org/wiki/Metaheuristics
Atashpaz-Gargari, E.; Lucas, C (2007). "Imperialist Competitive Algorithm: An algorithm for optimization inspired by imperialistic competition". IEEE Congress on Evolutionary Computation. 7. pp. 4661–4666
11
The reincarnation algorithm
A. Sharma, A new optimizing algorithm using reincarnation concept. 11th International Symposium on Computational Intelligence and Informatics (CINTI), pp. 281--288, IEEE, 2010
12
The reincarnation algorithm
A. Sharma, A new optimizing algorithm using reincarnation concept. 11th International Symposium on Computational Intelligence and Informatics (CINTI), pp. 281--288, IEEE, 2010
13
Heurísticas inspiradas en metáforas
• Algunas heurísticas “novedosas”:– son refritos de otros métodos; – se basan en metáforas “raras”; – no se siguen los principios de la
metáfora adoptada; – no se realiza una experimentación
seria.
K. Sorensen. Metaheuristics – The Methapor Exposed. Submitted, 2012 (Keynote Euro2012)
Lo raro es que siempre presentan mejores resultados que otras alternativas y eventualmente se publican
14
Heurísticas “novedosas” (mejoradas)
• Las mejoras a heurísticas usualmente son del tipo: – HC + CA para X
• Se reportan resultados en algunas instancias (sin análisis de significancia) y se mejoran resultados obtenidos por otros métodos (muy básicos o ad-hoc)
• SIN GENERALIZAR
Donde: HC: heurística conocidaCA: Mecanismo exitoso en otras heurísticas X: problema específico
K. Sorensen. Metaheuristics – The Methapor Exposed. 2012 (Draft, tutorial - Euro2012)
15K. Sorensen. Metaheuristics – The Methapor Exposed. 2012 (Draft, tutorial - Euro2012)
Consejos para un buen diseño de heurísticas
16K. Sorensen. Metaheuristics – The Methapor Exposed. 2012 (Draft, tutorial - Euro2012)
Consejos para un buen diseño de heurísticas
17
Consejos para un buen diseño de heurísticas
K. Sorensen. Metaheuristics – The Methapor Exposed. 2012 (Draft, tutorial - Euro2012)
18
Particle Swarm Optimization
19
Presencia de PSO
• PSO fue introducido en 1995 por J. Kennedy (sociología) & R. Eberhart (cómputo)
J. Kennedy, R. Eberhart. Particle swarm optimization. Proceedings., IEEE International Conference on Neural Networks, pp. 1942--1948, IEEE, 1995.
~3000 citas en 2012
Algunos números:
20
Presencia de PSO
Algunos números:
Distribución de publicaciones (ISI web of knowledge) en cuanto a diversas meta-heurísticas
Número de publicaciones sobre PSO ente 2001-2011
M. Eslami. A survey of the state of the art in particle swarm optimization. Research Journal of Applied Sciences Engineering and Technology, 4(9):1181—1197, 2012
21
PSO: Optimización basada en cúmulos de partículas
A. Rosales. Optimización Multi-Objetivo. Seminario de Optimización Multi-objetivo, 2012.
22
PSO: Optimización basada en cúmulos de partículas
• Método de optimización heurística inspirado en el comportamiento de sociedades biológicas, donde los individuos comparten objetivos y presentan tanto comportamientos individuales como sociales– Parvadas de aves– Bancos de peces– Enjambres de abejas
23
PSO: Optimización basada en cúmulos de partículas
• Método de optimización heurística inspirado en el comportamiento de sociedades biológicas, donde los individuos comparten objetivos y presentan tanto comportamientos individuales como sociales– Parvadas de aves– Bancos de peces– Enjambres de abejas
24
PSO: Optimización basada en cúmulos de partículas
• Las partículas son atraídas hacia la comida
• Cada partícula recuerda su posición más cercana con respecto a la comida
• Las partículas comparten información con partículas vecinas sobre cuál ha sido su posición más cercana a la comida
25
PSO: la analogía
• Las partículas están asociadas a las soluciones del problema a abordar
• La distancia entre la comida y cada partícula se representa por la función que se desea optimizar
• El cúmulo de partículas es la población de soluciones que explorará el espacio de búsqueda
• Las soluciones se representan por las posiciones de las partículas en el espacio de búsqueda
Idea:Las soluciones tienen una posición en el espacio
de búsqueda (el óptimo tiene una posición también). El objetivo es que las soluciones
exploren el espacio de búsqueda para llegar al óptimo del problema. No se sabe donde está el
óptimo pero se sabe que tan lejos esta cada solución del óptimo.
* Asumiendo que existe un óptimo y que es único.
26
PSO: la analogía
¿Es PSO un método de cómputo evolutivo?
No*: la población inicial se mantiene durante todo el proceso de
optimización
27
PSO: el algoritmo
• En cada instante de tiempo t, cada individuo i tiene una posición (xi
t) en el espacio de búsqueda así como una velocidad asociada (vi
t)
• El tamaño de xit = vi
t = d, las dimensiones del problema a abordar
• Al inicio PSO solo trabajaba en espacios continuos, hay extensiones que permiten trabajar en problemas de combinatoria o incluso mixtos
Discrete PSO, binary PSO, Geometric PSO
28
PSO: el algoritmo
• El algoritmo es un proceso iterativo en cada instante de tiempo cada partícula: – Sabe cuál ha sido su mejor posición
con respecto al objetivo (personal-best)
– Sabe cuál ha sido la mejor posición de sus vecinos (global-best)
29
PSO: el algoritmo
• Las partículas actualizan su posición en el espacio de búsqueda de acuerdo a:
10 1 2( ) ( )t t t t
i i i i g i v v p x p x
1 1t t ti i i
x v x
Inercia Info. local Info. global
30
PSO: el algoritmo1. Inicializar aleatoriamente la población de
individuos (swarm)2. Repetir el siguiente proceso iterativo hasta que
un criterio de parada se cumpla:a) Evaluar la aptitud de cada partícula b) Determinar las soluciones personal-best (pi), para cada
partícula, y global-best (pg)
c) Actualizar la posición y la velocidad de las partículas
3. Regresa la partícula mejor evaluada
Fitn
ess
valu
e
...
Init t=1 t=2 t=max_it...
31
PSO en acción
Brian Birge’s PSO demo for matlab
Función: Rosenbrock
32
PSO en acción
Función: Rastrigin
Brian Birge’s PSO demo for matlab
33
PSO en acción
Función: Ackley
Brian Birge’s PSO demo for matlab
34
Parámetros de PSO
• Los principales parámetros de PSO son: φ0, φ1, φ2 el tipo de vecindario, número de soluciones, criterio de parada
10 1 2( ) ( )t t t t
i i i i g i v v p x p x
1 1t t ti i i
x v x
Inercia Info. local Info. global
35
Parámetros de PSO
• Los principales parámetros de PSO son: φ0, φ1, φ2 el tipo de vecindario, número de soluciones, criterio de parada
10 1 2( ) ( )t t t t
i i i i g i v v p x p x
1 1t t ti i i
x v x
111 rc 222 rc
36
PSMS sin influencia local
• c1=0; c2=2
Hugo Jair Escalante, Manuel montes, Enrique Sucar. Particle Swarm Model Selection. JMLR, Vol. 10, pp. 405—440, 2009
37
PSMS sin influencia global
• c1=2; c2=0
Hugo Jair Escalante, Manuel montes, Enrique Sucar. Particle Swarm Model Selection. JMLR, Vol. 10, pp. 405—440, 2009
38
PSMS igual influencia local y global
• c1=2; c2=2
Hugo Jair Escalante, Manuel montes, Enrique Sucar. Particle Swarm Model Selection. JMLR, Vol. 10, pp. 405—440, 2009
39
Parámetros de PSO
• Si hacemos
• con
• Valores de garantizan la convergencia* de PSO
111 rc 222 rc
21*
8.3*
* Note that in PSO we say that the swarm converges iff limt→inf pgt = p, where p is an arbitrary position in the search space and t indexes iterations of PSO. Since p refers to an arbitrary position, this definition does not mean either convergence to local or global optimum, but convergence to the global best position in the swarm (van den Bergh, 2001; Reyes and Coello, 2006; Engelbrecht, 2006).
F. van den Bergh. An Analysis of Particle Swarm Optimizers. PhD thesis, University of Pretoria, Sudafrica, November 2001.
40
Parámetros de PSO• Sobre la inercia:
• Uno de los métodos más usados es un peso de inercia adaptativo
• Se fija al inicio φ0 = wstart, y este valor es disminuido linealmente durante k-iteraciones hasta un valor φ0 = wend
• Valores grandes de φ0 permiten moverse en pasos más grandes mientras que valores pequeños de φ0 permiten explorar intensivamente ciertas zonas
10 1 2( ) ( )t t t t
i i i i g i v v p x p x
41
Parámetros de PSO
• Vecindario: El esquema más usado es el esquema totalmente conectado, aunque hay diversas variantes
42
Más allá de PSO
• Extensiones: – Existe un gran número de variantes de
PSO (muchas del tipo Frankenstein)– Desde hace algún tiempo se han
propuesto métodos híbridos
• Aplicaciones: – La primera aplicación de PSO fue en el
entrenamiento de redes neuronales (optimización de los pesos)
– Hoy en día PSO se ha aplicado en infinidad de problemas
43
PSO: Optimización basada en cúmulos de partículas
A. Rosales. Optimización Multi-Objetivo. Seminario de Optimización Multi-objetivo, 2012.
44
MOPSO: Versión multi-objetivo
A. Rosales. Optimización Multi-Objetivo. Seminario de Optimización Multi-objetivo, 2012.
45
MOPSO: Versión multi-objetivo
• Frente de Pareto:
46
MOPSO: Versión multi-objetivo
• Cuando se intenta resolver un problema de MOOP se tienen, en general, tres objetivos:– Maximizar el número de
elementos en el FP– Minimizar la distancia del FP
producido por el método de MOOP con respecto al FP real
– Maximizar la dispersión de soluciones encontradas
47
MOPSO: Versión multi-objetivo
• De acuerdo a lo anterior, PSO debe ser modificado tomando en cuenta lo siguiente:– Cómo seleccionar partículas lideres dando preferencia a soluciones
no-dominadas
– Cómo retener soluciones no-dominadas encontradas durante el proceso de búsqueda de manera que se reporten soluciones no-dominadas con respecto a todas las soluciones anteriores, es deseable que dichas soluciones se posicionen dispersamente en el FP
– Cómo mantener diversidad en la población a fin de evitar convergencia hacia una única solución
48
MOPSO: el algoritmo
• En cada instante de tiempo t, cada individuo i tiene una posición (xi
t) en el espacio de búsqueda así como una velocidad asociada (vi
t)
• El tamaño de xit = vi
t = d, las dimensiones del problema a abordar
49
MOPSO: el algoritmo
• Las partículas actualizan su posición en el espacio de búsqueda de acuerdo a:
10 1 2( ) ( )t t t t
i i i i g i v v p x p x
1 1t t ti i i
x v x
Inercia Info. local Info. global
Entonces, ¿qué cambia?
50
MOPSO: Versión multi-objetivo
PSO
MOPSO Margarita Reyes-sierra , Carlos A. Coello Coello . Multi-Objective particle swarm optimizers: A survey of the state-of-the-art, INTERNATIONAL JOURNAL OF COMPUTATIONAL INTELLIGENCE RESEARCH, 2006
51
MOPSO: Versión multi-objetivo
• Existen muchas variantes para dar solución a cada sub-problema dentro de PSO, la mayoría son heurísticas
Margarita Reyes-sierra , Carlos A. Coello Coello . Multi-Objective particle swarm optimizers: A survey of the state-of-the-art, INTERNATIONAL JOURNAL OF COMPUTATIONAL INTELLIGENCE RESEARCH, 2006
52
Pros y contras de PSO
• Método simple y extremadamente fácil de implementar
• No requiere de operadores especializados para la generación de nuevas soluciones
• Permite controlar “fácilmente” la forma en que se explora el espacio de búsqueda
• Se puede adaptar de acuerdo a las características del problema
53
Pros y contras de PSO
• No hay un análisis de convergencia general, solo hay resultados para simplificaciones
• No se garantiza encontrar el mínimo
• Tiene problemas con problemas de no-continuos