Computación inteligente con organismos vivos. Aplicación ...

30
Computación inteligente con organismos vivos. Aplicación al estudio de Propiedades Emergentes y la Dinámica de Poblaciones Mario de Jesús Pérez Jiménez Luis Felipe Macías Ramos Ignacio Pérez Hurtado Grupo de Investigación en Computación Natural Dpto. de Ciencias de la Computación e Inteligencia Artificial Universidad de Sevilla Sevilla, 2013 Grupo Computación Natural (Univ. Sevilla) Estalmat 2013/14 Sevilla, 2013 1 / 30

Transcript of Computación inteligente con organismos vivos. Aplicación ...

Computación inteligente con organismos vivos.Aplicación al estudio de Propiedades Emergentes

y la Dinámica de Poblaciones

Mario de Jesús Pérez JiménezLuis Felipe Macías Ramos

Ignacio Pérez Hurtado

Grupo de Investigación en Computación NaturalDpto. de Ciencias de la Computación e Inteligencia Artificial

Universidad de Sevilla

Sevilla, 2013

Grupo Computación Natural (Univ. Sevilla) Estalmat 2013/14 Sevilla, 2013 1 / 30

Esquema de la sesión

1 Introducción a NetLogo

2 Propiedades Emergentes¿Qué es eso de emergente?Algunos ejemplos

Tortugas (Followers)Hormigas (Ants)Lenoes y Antílopes

3 Dinámica de PoblacionesQué es y para qué sirveAlgunos ejemplos más

Modelo Presa - DepredadorModelo de interacciones tritróficasModelo de propagación de enfermedades

4 Conclusiones, ruegos y preguntas

Grupo Computación Natural (Univ. Sevilla) Estalmat 2013/14 Sevilla, 2013 2 / 30

Esquema de la sesión

1 Introducción a NetLogo

2 Propiedades Emergentes

3 Dinámica de Poblaciones

4 Conclusiones, ruegos y preguntas

Grupo Computación Natural (Univ. Sevilla) Estalmat 2013/14 Sevilla, 2013 3 / 30

Introducción a NetLogo

NetLogo es una aplicación informática que proporciona un entorno para eldesarrollo y simulación de modelos computacionales basados en agentes.

En NetLogo se definen mundos virtuales donde los agentes interactúan entre síy su entorno siguiendo una sencilla lógica.

En NetLogo se pueden simular procesos de la vida real... y diseñar incluso vidaartificial.

NetLogo será la máquina en la que estudiemos los problemas en esta sesión.

NetLogo es Software Libre:

Se distribuye con su código fuente.Existe una comunidad de desarrolladores.Gratuito.

Puede descargarse de: http://ccl.northwestern.edu/netlogo/

Grupo Computación Natural (Univ. Sevilla) Estalmat 2013/14 Sevilla, 2013 4 / 30

Introducción a NetLogo

En NetLogo existen modelos.

Cada modelo presenta un mundo virtual que puede ser simulado.

La simulación puede ser ajustada mediante parámetros.

NetLogo viene con una gran librería de modelos.

También hay modelos creados por la comunidad.

Los modelos se pueden simular en el navegador web.

También podemos descargar NetLogo y ejecutarlo como una aplicación deescritorio.

Cada modelo tiene una página web que lo presenta, dice quiénes son susautores, explica cómo usarlo, etc.

Grupo Computación Natural (Univ. Sevilla) Estalmat 2013/14 Sevilla, 2013 5 / 30

Introducción a NetLogo

Grupo Computación Natural (Univ. Sevilla) Estalmat 2013/14 Sevilla, 2013 6 / 30

Introducción a NetLogo

En la interfaz de NetLogo destacan siempre un mismo conjunto de elementos:

Ticks: Velocidad de la simulación.Setup: Resetear la simulación.Go: Comenzar la Simulación.Ventana del mundo virtual.Ventana de gráficos de población.

Elementos variables por cada modelo: configuración de parámetros.

Grupo Computación Natural (Univ. Sevilla) Estalmat 2013/14 Sevilla, 2013 7 / 30

Esquema de la sesión

1 Introducción a NetLogo

2 Propiedades Emergentes¿Qué es eso de emergente?Algunos ejemplos

Tortugas (Followers)Hormigas (Ants)Lenoes y Antílopes

3 Dinámica de Poblaciones

4 Conclusiones, ruegos y preguntas

Grupo Computación Natural (Univ. Sevilla) Estalmat 2013/14 Sevilla, 2013 8 / 30

Propiedades Emergentes

Imaginemos un sistema en el que coexisten diversos individuos.

Los individuos pueden ser de distinto tipo (animales, personas, microbios, etc.).

Estos individuos se comportan de acuerdo a unas determinadas reglas einteraccionan entre ellos y su entorno de acuerdo a dichas reglas.

Decimos que el sistema presenta una propiedad emergente cuando por elhecho de que los individuos interaccionen entre sí (esto es, porque coexistan encomunidad) presentan un comportamiento que no está recogido en sus reglasde comportamiento individual.

Esa propiedad decimos que “emerge” porque no está especificada en ningunaparte del sistema.

Colorario: El todo es mayor que la suma de las partes.

Grupo Computación Natural (Univ. Sevilla) Estalmat 2013/14 Sevilla, 2013 9 / 30

Propiedades EmergentesEjemplo: Tortugas (Followers)

Modelo de NetLogo que no se corresponde con ningún fenómero natural.

Ruta: Library → Sample Models → Art → Follower.

Las tortugas (agentes) se rigen por un comportamiento bastante sencillo:

Una tortuga puede moverse individualmente, seguir a otra tortuga, o serseguida por otra tortuga.Cuando una tortuga no sigue a otra, se mueve aleatoriamente y “mira a sualrededor” para ver si encuentra dentro de su campo de visión alguna otratortuga que no esté siendo seguida.Si encuentra a una tortuga, se “pega a ella” y empieza a seguir susmovimientos.

¡Veamos su comportamiento en NetLogo!

Grupo Computación Natural (Univ. Sevilla) Estalmat 2013/14 Sevilla, 2013 10 / 30

Propiedades EmergentesEjemplo: Tortugas (Followers)

¿Se observa alguna propiedad emergente en este modelo? Si es así, ¿cuál es?

Grupo Computación Natural (Univ. Sevilla) Estalmat 2013/14 Sevilla, 2013 11 / 30

Propiedades EmergentesEjemplo: Hormigas (Ants)

Este modelo se corresponde con un fenómero natural: cómo las hormigasprocedentes de un hormiguero buscan comida y la traen comida de vuelta.

Ruta: Library → Sample Models → Biology → Ants.

Las hormigas (agentes) se rigen por un comportamiento bastante sencillo:

Existe un punto central que representa el hormiguero.Alrededor del hormiguero y a diversas distancias existen puntos querepresentan zonas con alimento.Las hormigas salen del hormiguero en busca de comida.Si una hormiga encuentra alimento, lleva un poco de vuelta al hormiguerodejando un rastro de feromonas tras de sí.Si una hormiga encuentra un rastro de feromonas, lo sigue en sentidoopuesto al hormiguero.Si una hormiga no encuentra ni alimento ni rastro de feromonas se muevealeatoriamente.

¡Veamos su comportamiento en NetLogo!

Grupo Computación Natural (Univ. Sevilla) Estalmat 2013/14 Sevilla, 2013 12 / 30

Propiedades EmergentesEjemplo: Hormigas (Ants)

¿Se observa alguna propiedad emergente en este modelo? Si es así, ¿cuál es?

¿Cómo afectan los parámetros que controlan la duración y la dispersión de laferomona?

Grupo Computación Natural (Univ. Sevilla) Estalmat 2013/14 Sevilla, 2013 13 / 30

Propiedades EmergentesEjemplo: Leones y Antílopes

Este modelo se corresponde con un fenómero natural: cómo interaccionanpresas (por ejemplo antílopes) y depredadores (por ejemplo leones) cuando losprimeros intentan ser cazados por los segundos.

Ruta: http://www.cs.us.es/ fran/vida_artificial_2012/prey_predators.html

Leones y antílopes (agentes) se rigen por un comportamiento bastante sencillo:

Cuando no avistan presa, los depredadores se mueven aleatoriamente.Los depredadores desprenden una sustancia química que es percibida porlas presas.Si no detectan sustancia química, las presas permanecen quietas.Cuando detectan sustancia química, las presas huyen en dirección haciadonde la intensidad de la sustancia es menor.

¡Veamos su comportamiento en NetLogo!

Grupo Computación Natural (Univ. Sevilla) Estalmat 2013/14 Sevilla, 2013 14 / 30

Propiedades EmergentesEjemplo: Leones y Antílopes

¿Se observa alguna propiedad emergente en este modelo? Si es así, ¿cuál es?

Grupo Computación Natural (Univ. Sevilla) Estalmat 2013/14 Sevilla, 2013 15 / 30

Esquema de la sesión

1 Introducción a NetLogo

2 Propiedades Emergentes

3 Dinámica de PoblacionesQué es y para qué sirveAlgunos ejemplos más

Modelo Presa - DepredadorModelo de interacciones tritróficasModelo de propagación de enfermedades

4 Conclusiones, ruegos y preguntas

Grupo Computación Natural (Univ. Sevilla) Estalmat 2013/14 Sevilla, 2013 16 / 30

Dinámica de PoblacionesQué es y para qué sirve

Especialidad de la Ecología que estudia las poblaciones biológicas.

Población biológica: conjunto de individuos de distintas especies que coexistenen un hábitat común.

Una vivienda donde habitan una familia, sus animales domésticos y losmicrobios que hay en el ambiente.Especies animales en una sierra: lobos, águilas, conejos, ciervos, etc.

La dinámica de poblaciones estudia los cambios en las poblaciones biológicas(número de individuos, distribución por sexo y edades, etc.) y los factores queproducen los cambios (ambientales, acción del hombre, etc.)

Tiene diversas aplicaciones:

Salvaguarda de especies en peligro de extinción.Contención de especies invasoras.Estudio de enfermedades infecciosas.

Grupo Computación Natural (Univ. Sevilla) Estalmat 2013/14 Sevilla, 2013 17 / 30

Dinámica de PoblacionesEjemplo: Modelo presa-depredador (Lotka-Volterra)

Ecuaciones Diferenciales

Dos especies: presa y depredador

Grupo Computación Natural (Univ. Sevilla) Estalmat 2013/14 Sevilla, 2013 18 / 30

Dinámica de PoblacionesEjemplo: Modelo de interacciones tritróficas

Simplificación de unecosistema real

Tres nivéles tróficos

(1) Plantas(2) Herbivoros(3) Carnivoros

Grupo Computación Natural (Univ. Sevilla) Estalmat 2013/14 Sevilla, 2013 19 / 30

Dinámica de PoblacionesEjemplo: Modelo de interacciones tritróficas

Estudiaremos este modelo en NetLogo

Ruta: Library → Sample Models → Biology → Wolf Sheep Predation

Descripción:

Se consideran presas (ovejas) y lobos (depredadores)Ovejas y lobos se mueven aleatoriamente por el territorio.Ovejas y lobos se reproducen con una cierta probabilidad.Los lobos deben comer ovejas para mantener su energía, si no tienensuficiente energía, mueren.

¡Veamos su comportamiento en NetLogo!

Grupo Computación Natural (Univ. Sevilla) Estalmat 2013/14 Sevilla, 2013 20 / 30

Dinámica de PoblacionesEjemplo: Modelo de interacciones tritróficas

Escenario 1: No se considera la hierba. Las ovejas no necesitan comer paramantener su energía.

Grupo Computación Natural (Univ. Sevilla) Estalmat 2013/14 Sevilla, 2013 21 / 30

Dinámica de PoblacionesEjemplo: Modelo de interacciones tritróficas

¿Qué comportamiento(s) se observa(n) en el escenario 1?

¿Qué puede decirse acerca de la estabilidad de las poblaciones en esteescenario?

¿A qué puede deberse?

Grupo Computación Natural (Univ. Sevilla) Estalmat 2013/14 Sevilla, 2013 22 / 30

Dinámica de PoblacionesEjemplo: Modelo de interacciones tritróficas

Escenario 2: Se considera la hierba. Las ovejas necesitan comer para mantenersu energía o mueren. La hierba solo vuelve a crecer pasado un cierto tiempotras ser consumida.

Grupo Computación Natural (Univ. Sevilla) Estalmat 2013/14 Sevilla, 2013 23 / 30

Dinámica de PoblacionesEjemplo: Modelo de interacciones tritróficas

¿Qué comportamiento(s) se observa(n) en el escenario 2?

¿Qué puede decirse acerca de la estabilidad de las poblaciones en esteescenario?

¿A qué puede deberse?

Grupo Computación Natural (Univ. Sevilla) Estalmat 2013/14 Sevilla, 2013 24 / 30

Dinámica de PoblacionesEjemplo: Modelo de propagación de enfermedades

Grupo Computación Natural (Univ. Sevilla) Estalmat 2013/14 Sevilla, 2013 25 / 30

Dinámica de PoblacionesEjemplo: Modelo de propagación de enfermedades

Estudiaremos este modelo en NetLogo. Este único modelos nos permitirárepresentar el comportamiento de diferentes enfermedades.

Ruta: Library → Sample Models → Biology → Virus

Descripción:

Población inicial: individuos susceptibles e infectados.Densidad de la población: afecta al número de veces que los individuosentran en contacto.Cuando la población está por debajo de un cierto umbral, los individuossanos pueden reproducirse.Los recién nacidos son susceptibles.Los inmunes lo son para siempre.Los individuos pueden morir de viejos o de la infección.Los parámetros clave de este modelo son: infecciosidad(INFECTIOUSNESS), oportunidad de recuperación(CHANCE-RECOVERY) y duración (DURATION).

¡Veamos su comportamiento en NetLogo!

Grupo Computación Natural (Univ. Sevilla) Estalmat 2013/14 Sevilla, 2013 26 / 30

Dinámica de PoblacionesEjemplo: Modelo de propagación de enfermedades

Intenta ajustar los parámetros claves para obtener un virus tipo ébola. El ébolase caracteriza por una muy alta infecciosidad, unas muy bajas oportunidades derecuperación y una muy baja duración.

Analiza el comportamiento del virus. ¿Podemos decir que el virus es exitoso?¿Por qué?

Grupo Computación Natural (Univ. Sevilla) Estalmat 2013/14 Sevilla, 2013 27 / 30

Dinámica de PoblacionesEjemplo: Modelo de propagación de enfermedades

Intenta ajustar los parámetros claves para obtener un virus tipo VIH. El VIH secaracteriza por una muy baja infecciosidad, unas muy bajas oportunidades derecuperación (sin medicación) y duración extremadamente larga.

Analiza el comportamiento del virus. ¿Podemos decir que el virus es exitoso?¿Por qué?

Grupo Computación Natural (Univ. Sevilla) Estalmat 2013/14 Sevilla, 2013 28 / 30

Dinámica de PoblacionesEjemplo: Modelo de propagación de enfermedades

¿Qué características debe de tener un virus para ser extremadamentedestructivo posible para la población mundial? Intenta ajustar los parámetrosclave modelizar un virus como éste.

Grupo Computación Natural (Univ. Sevilla) Estalmat 2013/14 Sevilla, 2013 29 / 30

Esquema de la sesión

1 Introducción a NetLogo

2 Propiedades Emergentes

3 Dinámica de Poblaciones

4 Conclusiones, ruegos y preguntas

Grupo Computación Natural (Univ. Sevilla) Estalmat 2013/14 Sevilla, 2013 30 / 30