Inteligencia de enjambres -...

53
Inteligencia de enjambres Diego Milone Inteligencia Computacional Departamento de Inform ´ atica FICH-UNL

Transcript of Inteligencia de enjambres -...

Inteligencia de enjambres

Diego Milone

Inteligencia ComputacionalDepartamento de Informatica

FICH-UNL

:

Introduccion Colonia de hormigas Enjambre de partıculas

Automata de estados finitos

• Definicion:A =< X,Y,E,D >

• Extension con funciones de salida: y = λ(x,E)• Estados, reglas de transicion, grafos• Ejemplos de reglas de transicion determinısticas y

probabilısticas

:

Introduccion Colonia de hormigas Enjambre de partıculas

Automata de estados finitos

• Definicion:A =< X,Y,E,D >

• Extension con funciones de salida: y = λ(x,E)

• Estados, reglas de transicion, grafos• Ejemplos de reglas de transicion determinısticas y

probabilısticas

:

Introduccion Colonia de hormigas Enjambre de partıculas

Automata de estados finitos

• Definicion:A =< X,Y,E,D >

• Extension con funciones de salida: y = λ(x,E)• Estados, reglas de transicion, grafos

• Ejemplos de reglas de transicion determinısticas yprobabilısticas

:

Introduccion Colonia de hormigas Enjambre de partıculas

Automata de estados finitos

• Definicion:A =< X,Y,E,D >

• Extension con funciones de salida: y = λ(x,E)• Estados, reglas de transicion, grafos• Ejemplos de reglas de transicion determinısticas y

probabilısticas

:

Introduccion Colonia de hormigas Enjambre de partıculas

Automatas celulares

• Definicion:R =< A,T,C >

• Topologıas: triangular, rectangular, hexagonal,...• Acoplamiento:

• Tipos y tamanos de vecindad: Von Neumann, Moore,...• Tipos de conexiones: isotropicas, anisotropicas,...

:

Introduccion Colonia de hormigas Enjambre de partıculas

Automatas celulares

• Definicion:R =< A,T,C >

• Topologıas: triangular, rectangular, hexagonal,...

• Acoplamiento:• Tipos y tamanos de vecindad: Von Neumann, Moore,...• Tipos de conexiones: isotropicas, anisotropicas,...

:

Introduccion Colonia de hormigas Enjambre de partıculas

Automatas celulares

• Definicion:R =< A,T,C >

• Topologıas: triangular, rectangular, hexagonal,...• Acoplamiento:

• Tipos y tamanos de vecindad: Von Neumann, Moore,...• Tipos de conexiones: isotropicas, anisotropicas,...

:

Introduccion Colonia de hormigas Enjambre de partıculas

Automatas celulares

Ejemplos:• Juego de la vida de Conway: reglas basicas

• Vivo con menos de 2 vivos en el entorno→ muere• Vivo con mas de 3 vivos en el entorno→ muere• Vivo con 2 o 3 vivos en el entorno→ vive• Muerto con 3 vivos en el entorno→ nace

• → Mirek’s Cellebration• Crecimiento de plantas, bacterias,...• Poblaciones: colonias de hormigas, enjambre de abejas,

modelos presa predador,...• Tejidos biologicos: cardıaco, nervioso,...• Fluidos

:

Introduccion Colonia de hormigas Enjambre de partıculas

Automatas celulares

Ejemplos:• Juego de la vida de Conway: reglas basicas

• Vivo con menos de 2 vivos en el entorno→ muere

• Vivo con mas de 3 vivos en el entorno→ muere• Vivo con 2 o 3 vivos en el entorno→ vive• Muerto con 3 vivos en el entorno→ nace

• → Mirek’s Cellebration• Crecimiento de plantas, bacterias,...• Poblaciones: colonias de hormigas, enjambre de abejas,

modelos presa predador,...• Tejidos biologicos: cardıaco, nervioso,...• Fluidos

:

Introduccion Colonia de hormigas Enjambre de partıculas

Automatas celulares

Ejemplos:• Juego de la vida de Conway: reglas basicas

• Vivo con menos de 2 vivos en el entorno→ muere• Vivo con mas de 3 vivos en el entorno→ muere

• Vivo con 2 o 3 vivos en el entorno→ vive• Muerto con 3 vivos en el entorno→ nace

• → Mirek’s Cellebration• Crecimiento de plantas, bacterias,...• Poblaciones: colonias de hormigas, enjambre de abejas,

modelos presa predador,...• Tejidos biologicos: cardıaco, nervioso,...• Fluidos

:

Introduccion Colonia de hormigas Enjambre de partıculas

Automatas celulares

Ejemplos:• Juego de la vida de Conway: reglas basicas

• Vivo con menos de 2 vivos en el entorno→ muere• Vivo con mas de 3 vivos en el entorno→ muere• Vivo con 2 o 3 vivos en el entorno→ vive

• Muerto con 3 vivos en el entorno→ nace

• → Mirek’s Cellebration• Crecimiento de plantas, bacterias,...• Poblaciones: colonias de hormigas, enjambre de abejas,

modelos presa predador,...• Tejidos biologicos: cardıaco, nervioso,...• Fluidos

:

Introduccion Colonia de hormigas Enjambre de partıculas

Automatas celulares

Ejemplos:• Juego de la vida de Conway: reglas basicas

• Vivo con menos de 2 vivos en el entorno→ muere• Vivo con mas de 3 vivos en el entorno→ muere• Vivo con 2 o 3 vivos en el entorno→ vive• Muerto con 3 vivos en el entorno→ nace

• → Mirek’s Cellebration• Crecimiento de plantas, bacterias,...• Poblaciones: colonias de hormigas, enjambre de abejas,

modelos presa predador,...• Tejidos biologicos: cardıaco, nervioso,...• Fluidos

:

Introduccion Colonia de hormigas Enjambre de partıculas

Automatas celulares

Ejemplos:• Juego de la vida de Conway: reglas basicas

• Vivo con menos de 2 vivos en el entorno→ muere• Vivo con mas de 3 vivos en el entorno→ muere• Vivo con 2 o 3 vivos en el entorno→ vive• Muerto con 3 vivos en el entorno→ nace

• → Mirek’s Cellebration

• Crecimiento de plantas, bacterias,...• Poblaciones: colonias de hormigas, enjambre de abejas,

modelos presa predador,...• Tejidos biologicos: cardıaco, nervioso,...• Fluidos

:

Introduccion Colonia de hormigas Enjambre de partıculas

Automatas celulares

Ejemplos:• Juego de la vida de Conway: reglas basicas

• Vivo con menos de 2 vivos en el entorno→ muere• Vivo con mas de 3 vivos en el entorno→ muere• Vivo con 2 o 3 vivos en el entorno→ vive• Muerto con 3 vivos en el entorno→ nace

• → Mirek’s Cellebration• Crecimiento de plantas, bacterias,...

• Poblaciones: colonias de hormigas, enjambre de abejas,modelos presa predador,...

• Tejidos biologicos: cardıaco, nervioso,...• Fluidos

:

Introduccion Colonia de hormigas Enjambre de partıculas

Automatas celulares

Ejemplos:• Juego de la vida de Conway: reglas basicas

• Vivo con menos de 2 vivos en el entorno→ muere• Vivo con mas de 3 vivos en el entorno→ muere• Vivo con 2 o 3 vivos en el entorno→ vive• Muerto con 3 vivos en el entorno→ nace

• → Mirek’s Cellebration• Crecimiento de plantas, bacterias,...• Poblaciones: colonias de hormigas, enjambre de abejas,

modelos presa predador,...

• Tejidos biologicos: cardıaco, nervioso,...• Fluidos

:

Introduccion Colonia de hormigas Enjambre de partıculas

Automatas celulares

Ejemplos:• Juego de la vida de Conway: reglas basicas

• Vivo con menos de 2 vivos en el entorno→ muere• Vivo con mas de 3 vivos en el entorno→ muere• Vivo con 2 o 3 vivos en el entorno→ vive• Muerto con 3 vivos en el entorno→ nace

• → Mirek’s Cellebration• Crecimiento de plantas, bacterias,...• Poblaciones: colonias de hormigas, enjambre de abejas,

modelos presa predador,...• Tejidos biologicos: cardıaco, nervioso,...

• Fluidos

:

Introduccion Colonia de hormigas Enjambre de partıculas

Automatas celulares

Ejemplos:• Juego de la vida de Conway: reglas basicas

• Vivo con menos de 2 vivos en el entorno→ muere• Vivo con mas de 3 vivos en el entorno→ muere• Vivo con 2 o 3 vivos en el entorno→ vive• Muerto con 3 vivos en el entorno→ nace

• → Mirek’s Cellebration• Crecimiento de plantas, bacterias,...• Poblaciones: colonias de hormigas, enjambre de abejas,

modelos presa predador,...• Tejidos biologicos: cardıaco, nervioso,...• Fluidos

:

Introduccion Colonia de hormigas Enjambre de partıculas

Inteligencia colectiva

Denominaciones y relaciones:• Computacion evolutiva• Inteligencia de colonias• Inteligencia de enjambres• Inteligencia colaborativa• Inteligencia social• ...

:

Introduccion Colonia de hormigas Enjambre de partıculas

Inteligencia colectiva

Caracterısticas generales:• Auto-organizacion

• Estigmergıa: “colaboracion a traves del medio fısico”• Comportamiento emergente: inteligencia distribuida,

robustez• Fuerte interaccion local• Organizacion social altamente estructurada• Colaboracion versus competencia• Componentes estocasticas• Bio-inspiracion

:

Introduccion Colonia de hormigas Enjambre de partıculas

Inteligencia colectiva

Caracterısticas generales:• Auto-organizacion• Estigmergıa: “colaboracion a traves del medio fısico”

• Comportamiento emergente: inteligencia distribuida,robustez

• Fuerte interaccion local• Organizacion social altamente estructurada• Colaboracion versus competencia• Componentes estocasticas• Bio-inspiracion

:

Introduccion Colonia de hormigas Enjambre de partıculas

Inteligencia colectiva

Caracterısticas generales:• Auto-organizacion• Estigmergıa: “colaboracion a traves del medio fısico”• Comportamiento emergente: inteligencia distribuida,

robustez• Fuerte interaccion local• Organizacion social altamente estructurada• Colaboracion versus competencia

• Componentes estocasticas• Bio-inspiracion

:

Introduccion Colonia de hormigas Enjambre de partıculas

Inteligencia colectiva

Caracterısticas generales:• Auto-organizacion• Estigmergıa: “colaboracion a traves del medio fısico”• Comportamiento emergente: inteligencia distribuida,

robustez• Fuerte interaccion local• Organizacion social altamente estructurada• Colaboracion versus competencia• Componentes estocasticas• Bio-inspiracion

:

Introduccion Colonia de hormigas Enjambre de partıculas

Inteligencia colectiva

Ejemplos:• Bandadas de pajaros

• Colonias de hormigas• Paneles/enjambres de abejas• Cardumenes de peces• Rebanos de ovejas o cabras• Manadas de predadores

:

Introduccion Colonia de hormigas Enjambre de partıculas

Inteligencia colectiva

Ejemplos:• Bandadas de pajaros• Colonias de hormigas

• Paneles/enjambres de abejas• Cardumenes de peces• Rebanos de ovejas o cabras• Manadas de predadores

:

Introduccion Colonia de hormigas Enjambre de partıculas

Inteligencia colectiva

Ejemplos:• Bandadas de pajaros• Colonias de hormigas• Paneles/enjambres de abejas

• Cardumenes de peces• Rebanos de ovejas o cabras• Manadas de predadores

:

Introduccion Colonia de hormigas Enjambre de partıculas

Inteligencia colectiva

Ejemplos:• Bandadas de pajaros• Colonias de hormigas• Paneles/enjambres de abejas• Cardumenes de peces

• Rebanos de ovejas o cabras• Manadas de predadores

:

Introduccion Colonia de hormigas Enjambre de partıculas

Inteligencia colectiva

Ejemplos:• Bandadas de pajaros• Colonias de hormigas• Paneles/enjambres de abejas• Cardumenes de peces• Rebanos de ovejas o cabras

• Manadas de predadores

:

Introduccion Colonia de hormigas Enjambre de partıculas

Inteligencia colectiva

Ejemplos:• Bandadas de pajaros• Colonias de hormigas• Paneles/enjambres de abejas• Cardumenes de peces• Rebanos de ovejas o cabras• Manadas de predadores

:

Introduccion Colonia de hormigas Enjambre de partıculas

Inteligencia colectiva

Elementos individuales:• ”Boids”: partıculas, objetos, elementos...

• Automatas: redes de automatas celulares• Agentes: en estructuras de multi-agentes

:

Introduccion Colonia de hormigas Enjambre de partıculas

Inteligencia colectiva

Elementos individuales:• ”Boids”: partıculas, objetos, elementos...• Automatas: redes de automatas celulares

• Agentes: en estructuras de multi-agentes

:

Introduccion Colonia de hormigas Enjambre de partıculas

Inteligencia colectiva

Elementos individuales:• ”Boids”: partıculas, objetos, elementos...• Automatas: redes de automatas celulares• Agentes: en estructuras de multi-agentes

:

Introduccion Colonia de hormigas Enjambre de partıculas

Inteligencia colectiva

Algoritmos:X Colonias de hormigasX Enjambre de partıculas

• Difusion estocastica• Formacion de rıos• Busqueda gravitacional• Sistema inmune artificial• Algorıtmos memeticos• ...• Relacionados: algoritmos evolutivos, SOM,...

:

Introduccion Colonia de hormigas Enjambre de partıculas

Inteligencia colectiva

Algoritmos:X Colonias de hormigasX Enjambre de partıculas• Difusion estocastica• Formacion de rıos• Busqueda gravitacional• Sistema inmune artificial• Algorıtmos memeticos• ...

• Relacionados: algoritmos evolutivos, SOM,...

:

Introduccion Colonia de hormigas Enjambre de partıculas

Inteligencia colectiva

Algoritmos:X Colonias de hormigasX Enjambre de partıculas• Difusion estocastica• Formacion de rıos• Busqueda gravitacional• Sistema inmune artificial• Algorıtmos memeticos• ...• Relacionados: algoritmos evolutivos, SOM,...

:

Introduccion Colonia de hormigas Enjambre de partıculas

Inteligencia colectiva

Principales aplicaciones:• Optimizacion: aproximacion de funciones, entrenamiento,

estimacion, identificacion, planificacion,...

• Busqueda, ruteo• Agrupamiento no supervisado, clasificacion• ...

:

Introduccion Colonia de hormigas Enjambre de partıculas

Inteligencia colectiva

Principales aplicaciones:• Optimizacion: aproximacion de funciones, entrenamiento,

estimacion, identificacion, planificacion,...• Busqueda, ruteo• Agrupamiento no supervisado, clasificacion• ...

:

Introduccion Colonia de hormigas Enjambre de partıculas

Colonia de hormigas

:

Introduccion Colonia de hormigas Enjambre de partıculas

La inspiracion biologica• Hay 1016 hormigas en la tierra (y 6× 109 humanos)• Igual peso total• 30 millones por colonia

• Feromonas: las busqueda del camino mas corto a lacomida

1. Comportamiento inicial aleatorio2. Cuando encuentran una fuente de comida se organizan y

comienzan a seguir el mismo camino2.1 Mecanismo de reclutamiento: mayormente por feromonas,

liberadas al regresar (algunas las liberan en proporcion a lacantidad de alimento encontrado)

2.2 Si otras encuentran feromonas siguen el rastro (con masprobabilidad, tratando de alejarse del hormiguero si nollevan comida)

2.3 El camino se refuerza al ser seguido por mas y mashormigas

• Notar:• Comunicacion indirecta• Modificacion del entorno fısico: estigmergıa

:

Introduccion Colonia de hormigas Enjambre de partıculas

La inspiracion biologica• Hay 1016 hormigas en la tierra (y 6× 109 humanos)• Igual peso total• 30 millones por colonia• Feromonas: las busqueda del camino mas corto a la

comida

1. Comportamiento inicial aleatorio2. Cuando encuentran una fuente de comida se organizan y

comienzan a seguir el mismo camino2.1 Mecanismo de reclutamiento: mayormente por feromonas,

liberadas al regresar (algunas las liberan en proporcion a lacantidad de alimento encontrado)

2.2 Si otras encuentran feromonas siguen el rastro (con masprobabilidad, tratando de alejarse del hormiguero si nollevan comida)

2.3 El camino se refuerza al ser seguido por mas y mashormigas

• Notar:• Comunicacion indirecta• Modificacion del entorno fısico: estigmergıa

:

Introduccion Colonia de hormigas Enjambre de partıculas

La inspiracion biologica• Hay 1016 hormigas en la tierra (y 6× 109 humanos)• Igual peso total• 30 millones por colonia• Feromonas: las busqueda del camino mas corto a la

comida1. Comportamiento inicial aleatorio2. Cuando encuentran una fuente de comida se organizan y

comienzan a seguir el mismo camino2.1 Mecanismo de reclutamiento: mayormente por feromonas,

liberadas al regresar (algunas las liberan en proporcion a lacantidad de alimento encontrado)

2.2 Si otras encuentran feromonas siguen el rastro (con masprobabilidad, tratando de alejarse del hormiguero si nollevan comida)

2.3 El camino se refuerza al ser seguido por mas y mashormigas

• Notar:• Comunicacion indirecta• Modificacion del entorno fısico: estigmergıa

:

Introduccion Colonia de hormigas Enjambre de partıculas

La inspiracion biologica• Hay 1016 hormigas en la tierra (y 6× 109 humanos)• Igual peso total• 30 millones por colonia• Feromonas: las busqueda del camino mas corto a la

comida1. Comportamiento inicial aleatorio2. Cuando encuentran una fuente de comida se organizan y

comienzan a seguir el mismo camino2.1 Mecanismo de reclutamiento: mayormente por feromonas,

liberadas al regresar (algunas las liberan en proporcion a lacantidad de alimento encontrado)

2.2 Si otras encuentran feromonas siguen el rastro (con masprobabilidad, tratando de alejarse del hormiguero si nollevan comida)

2.3 El camino se refuerza al ser seguido por mas y mashormigas

• Notar:• Comunicacion indirecta• Modificacion del entorno fısico: estigmergıa

:

Introduccion Colonia de hormigas Enjambre de partıculas

Experimento del puente binario

:

Introduccion Colonia de hormigas Enjambre de partıculas

Colonia de hormigas

Definiciones:• G = (V,E): grafo con vertices V y matriz de conexiones E• σij: feromonas en la conexion entre i y j• k = 1, 2, . . . , nk: hormigas• Ni: nodos disponibles a partir del nodo i• xk(t): camino de la hormiga k

:

Introduccion Colonia de hormigas Enjambre de partıculas

Algoritmo 1: Colonia de hormigas simple (sACO)

:

Introduccion Colonia de hormigas Enjambre de partıculas

Algoritmo 2: Sistema de hormigas (AS)

:

Introduccion Colonia de hormigas Enjambre de partıculas

Enjambre de partıculas

:

Introduccion Colonia de hormigas Enjambre de partıculas

La inspiracion biologica

• Bandadas de pajaros• Cada individuo vuela/navega el espacio ajustando su

posicion en base a su experiencia y a la informacion de losindividuos de su entorno

• Emular el exito de los vecinos y propio• xi(t): posicion de la partıcula i, en el tiempo t (espacio RN)• vi(t): velocidad de la partıcula i, en el tiempo t• Regla basica: xi(t + 1) = xi(t) + vi(t)

:

Introduccion Colonia de hormigas Enjambre de partıculas

La inspiracion biologica

• Bandadas de pajaros• Cada individuo vuela/navega el espacio ajustando su

posicion en base a su experiencia y a la informacion de losindividuos de su entorno

• Emular el exito de los vecinos y propio• xi(t): posicion de la partıcula i, en el tiempo t (espacio RN)• vi(t): velocidad de la partıcula i, en el tiempo t

• Regla basica: xi(t + 1) = xi(t) + vi(t)

:

Introduccion Colonia de hormigas Enjambre de partıculas

La inspiracion biologica

• Bandadas de pajaros• Cada individuo vuela/navega el espacio ajustando su

posicion en base a su experiencia y a la informacion de losindividuos de su entorno

• Emular el exito de los vecinos y propio• xi(t): posicion de la partıcula i, en el tiempo t (espacio RN)• vi(t): velocidad de la partıcula i, en el tiempo t• Regla basica: xi(t + 1) = xi(t) + vi(t)

:

Introduccion Colonia de hormigas Enjambre de partıculas

Enjambre de partıculas

Definiciones:• yi: mejor posicion personal de la partıcula i (la mejor que

visito desde t = 0 hasta la actualidad)• yi: mejor posicion visitada por todo el enjambre

:

Introduccion Colonia de hormigas Enjambre de partıculas

Algoritmo 3: Enjambre del mejor global (gEP)

:

Introduccion Colonia de hormigas Enjambre de partıculas

Algoritmo 4: Enjambre del mejor local (`EP)