Algoritmos basados en inteligencia de enjambres: Hormigas y Abejas

Anuncio
Tabla de Contenidos
Insectos sociales
ACO
Algoritmos de Abejas
Bibliografı́a
Algoritmos basados en inteligencia de enjambres:
Hormigas y Abejas
Miguel Cárdenas Montes - Antonio Gómez Iglesias
Centro de Investigaciones Energéticas Medioambientales y Tecnológicas,
Madrid, Spain
miguel.cardenas@ciemat.es
15-19 de Octubre de 2011
M. Cárdenas
ants-bees
Tabla de Contenidos
Insectos sociales
ACO
Algoritmos de Abejas
Bibliografı́a
Temario del Curso
Temario
• Introducción a la Computación Evolutiva.
• Aplicaciones a Problemas Cientı́ficos y Tecnológicos.
• Algoritmos Genéticos.
• Algoritmos Basados en Evolución Diferencial.
• Algoritmos Evolutivos para Problemas Multiobjetivo.
• RND y EA
• Modelos Basados en Adaptación Social: abejas, hormigas y
enjambres.
M. Cárdenas
ants-bees
Tabla de Contenidos
Insectos sociales
ACO
Algoritmos de Abejas
Bibliografı́a
Tabla de Contenidos
1 Tabla de Contenidos
2 Insectos sociales
3 ACO
4 Algoritmos de Abejas
5 Bibliografı́a
M. Cárdenas
ants-bees
Tabla de Contenidos
Insectos sociales
ACO
Algoritmos de Abejas
Bibliografı́a
Insectos sociales
M. Cárdenas
ants-bees
Tabla de Contenidos
Insectos sociales
ACO
Algoritmos de Abejas
Bibliografı́a
Insectos sociales
• Cada individuo parece ser independiente de los demás.
• La colonia parece tener cierta organización.
• Aparentemente la integración de las actividades de los
individuos se produce sin ningún supervisor.
M. Cárdenas
ants-bees
Tabla de Contenidos
Insectos sociales
ACO
Algoritmos de Abejas
Bibliografı́a
Sistemas adaptativos
• El entorno en el que se encuentran las colonias cambia
continuamente.
• Los insectos son capaces de adaptarse a estos cambios y
actuar acorde a ellos.
• Constituyen un sistema flexible y al mismo tiempo muy
robusto.
M. Cárdenas
ants-bees
Tabla de Contenidos
Insectos sociales
ACO
Algoritmos de Abejas
Bibliografı́a
Autoorganización
• Se construye a partir de las interacciones entre individuos
• Se basa en cuatro elementos:
• Feedback positivo
• Feedback negativo
• Fluctuaciones
• Múltiples interacciones
M. Cárdenas
ants-bees
Tabla de Contenidos
Insectos sociales
ACO
Algoritmos de Abejas
Bibliografı́a
Sistemas descentralizados
• El conocimiento y la información se encuentran distribuidos
entre todos los individuos de la colonia
• Ningún individuo tiene conocimiento del total de información
existente
• Los individuos intercambian información mediante ciertos
procesos de comunicación
M. Cárdenas
ants-bees
Tabla de Contenidos
Insectos sociales
ACO
Algoritmos de Abejas
Bibliografı́a
División del trabajo
• Individuos especializados realizan diferentes tareas de manera
simultánea
• Se evita el cambio de tarea, que implica un gasto de energı́a y
tiempo
• Dentro de cada grupo de tareas, se comparten acciones y los
individuos pueden pasar de una subtarea a otra
M. Cárdenas
ants-bees
Tabla de Contenidos
Insectos sociales
ACO
Algoritmos de Abejas
Bibliografı́a
Algoritmos de inteligencia de Enjambres
Ejemplos de algoritmos
• Hormigas, ACO - ant colony optimization
• Abejas, ABC - artificial bee colony
• Luciérnagas, firefly
• Bandadas de pájaros o bancos de peces (PSO)
M. Cárdenas
ants-bees
Tabla de Contenidos
Insectos sociales
ACO
Algoritmos de Abejas
Bibliografı́a
ACO
M. Cárdenas
ants-bees
Tabla de Contenidos
Insectos sociales
ACO
Algoritmos de Abejas
Bibliografı́a
ACO I
• Es de las técnicas más populares.
• Creado por M. Dorigo en 1992 [1].
M. Cárdenas
ants-bees
Tabla de Contenidos
Insectos sociales
ACO
Algoritmos de Abejas
Bibliografı́a
ACO I
• Las hormigas vagan aleatoriamente
en su búsqueda de alimento
• En su camino de regreso a la
colonia depositan feromona
• Si otra hormiga encuentra esa
feromona, seguirá el rastro
• La intensidad de la feromona
desaparece con el tiempo
• Si más hormigas depositan
feromonas, el rastro se intensifica
M. Cárdenas
ants-bees
Tabla de Contenidos
Insectos sociales
ACO
Algoritmos de Abejas
Bibliografı́a
ACO II
• La evaporación ayuda a que no se
produzca una convergencia temprana
• La exploración aleatoria ayuda al
descubrimiento de soluciones
M. Cárdenas
ants-bees
Tabla de Contenidos
Insectos sociales
ACO
Algoritmos de Abejas
Bibliografı́a
Ejemplos
•
•
http://website.lineone.net/~john.montgomery/demos/ants.html
http://www.djoh.net/inde/ANTColony/applet.html
M. Cárdenas
ants-bees
Tabla de Contenidos
Insectos sociales
ACO
Algoritmos de Abejas
Bibliografı́a
De la naturaleza a la computación
• Cada individuo es un proceso
• La colmena es el algoritmo que controla la ejecución de los
procesos
• En algún momento algunos procesos tienen que compartir su
información
M. Cárdenas
ants-bees
Tabla de Contenidos
Insectos sociales
ACO
Algoritmos de Abejas
Bibliografı́a
De la naturaleza a la computación
• Cada individuo es un proceso
• La colmena es el algoritmo que controla la ejecución de los
procesos
• En algún momento algunos procesos tienen que compartir su
información
• Para ponerle un nombre basado en enjambres, debe seguir los
patrones del enjambre en la naturaleza
M. Cárdenas
ants-bees
Tabla de Contenidos
Insectos sociales
ACO
Algoritmos de Abejas
Bibliografı́a
Algoritmos de Abejas
M. Cárdenas
ants-bees
Tabla de Contenidos
Insectos sociales
ACO
Algoritmos de Abejas
Bibliografı́a
M. Cárdenas
ants-bees
Tabla de Contenidos
Insectos sociales
ACO
Algoritmos de Abejas
Bibliografı́a
Algoritmos de Abejas
• Idea: copiar el comportamiento de las abejas
• Descentralización
• Asincronismo
M. Cárdenas
ants-bees
Tabla de Contenidos
Insectos sociales
ACO
Algoritmos de Abejas
Bibliografı́a
Algoritmos de Abejas
• Diferente tipos de abejas en función del comportamiento:
adaptabilidad a muchos tipos de problemas.
• El algoritmo más popular es el de Colonias de Abejas (ABC -
Artificial Bee Colony) [2].
M. Cárdenas
ants-bees
Tabla de Contenidos
Insectos sociales
ACO
Algoritmos de Abejas
Bibliografı́a
Algoritmos de Abejas
• Propuesto por D. Karaboga.
• Uno de los algoritmos más populares.
• Numerosas aplicaciones (http://mf.erciyes.edu.tr/abc/).
• Planteado como un algoritmo iterativo.
M. Cárdenas
ants-bees
Tabla de Contenidos
Insectos sociales
ACO
Algoritmos de Abejas
Bibliografı́a
Búsqueda de Comida
Dos procesos básicos (división de tareas)
• Descubrimiento de nuevas fuentes de comida.
• Explotación de esas fuentes.
M. Cárdenas
ants-bees
Tabla de Contenidos
Insectos sociales
ACO
Algoritmos de Abejas
Bibliografı́a
Tipos de Abejas
• Scouts: exploran el espacio de soluciones por diversificación.
• Employed: explotación.
• Onlookers: explotación. Deciden en función de las Employed
M. Cárdenas
ants-bees
Tabla de Contenidos
Insectos sociales
ACO
Algoritmos de Abejas
Bibliografı́a
Algoritmo
• Enviar scouts
• Repetir
1 Enviar las employed y calcular el fitness.
2 Calcular la probabilidad de cada solución de ser explotada.
3 Explotar solución por onlookers.
4 Detener explotación de soluciones abandonadas.
5 Enviar scouts a explorar.
6 Almacenar la mejor solución.
M. Cárdenas
ants-bees
Tabla de Contenidos
Insectos sociales
ACO
Algoritmos de Abejas
Bibliografı́a
Bibliografı́a
[1] Bonabeau, E., Dorigo, M., Theraulaz, G.: Swarm Intelligence: From Natural to Artificial Systems. Oxford
(1999)
[2] Karaboga, D., Basturk, B.: A powerful and efficient algorithm for numerical function optimization: artificial
bee colony (abc) algorithm. J. Global Optimization 39(3) (2007) 459–471
M. Cárdenas
ants-bees
Tabla de Contenidos
Insectos sociales
ACO
Algoritmos de Abejas
Bibliografı́a
Gracias
Gracias
¿Preguntas?
¿Más preguntas?
M. Cárdenas
ants-bees
Descargar