Vida artificial (2005)

1,728 views
1,543 views

Published on

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
1,728
On SlideShare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
72
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Vida artificial (2005)

  1. 1. Vida Artificial Miriam Ruiz
  2. 2. Índice • Introducción • Patrones emergentes • Autómatas celulares • Modelos basados en agentes • Inteligencia distribuida • Evolución artificial • Química artificial • Ejemplos • Bibliografía
  3. 3. ¿Qué es la vida? • No existe una definición aceptada universalmente de lo que es la vida. • En general, se puede decir que la condición que distingue un organismo vivo de los objetos inorgánicos o de organismos muertos es el crecimiento a través de un metabolismo, un medio INTRODUCCIÓN > Qué es la Vida de reproducción, y la regulación interna en respuesta al ambiente. • Aunque la capacidad de reproducción se considera necesaria para la vida, esto quizás sea más cierto para las especies que para organismos individuales. Algunos animales son incapaces de reproducirse (mulas, hormigas soldado o simplemente organismos infértiles). ¿Quiere esto decir que no están vivos?
  4. 4. ¿Qué es la vida artificial? • Estudio de sistemas artificiales que muestran comportamientos INTRODUCCIÓN > Qué es la Vida Artificial característicos de los sistemas vivos reales. • Término acuñado a finales de los 80s por Christopher Langton al realizar la primera conferencia sobre el tema en Los Alamos National Laboratory in 1987, bajo el nombre de "International Conference on the Synthesis and Simulation of Living Systems".
  5. 5. ¿Qué es la vida artificial? Los investigadores en vida artificial a menudo son divididos en 2 grandes grupos: INTRODUCCIÓN > Qué es la Vida Artificial • La posición "fuerte" defiende que la vida es un proceso que puede ser abstraído de cualquier medio concreto. • La posición "suave" niega la posibilidad de que pueda existir un proceso vivo fuera de la química del carbono. Los investigadores que trabajan en esta línea intentan emular procesos relacionados con la vida para conseguir entender fenómenos simples.
  6. 6. ¿Qué es la vida artificial? • El objetivo del estudio de la vida artificial no es solamente crear modelos biológicos de INTRODUCCIÓN > Qué es la Vida Artificial seres vivos, sino investigar los principios fundamentales de la vida en sí misma. • Estos pueden ser estudiados incluso a través de modelos de los que no exista un equivalente físico directo.
  7. 7. Las bases de la vida artificial • La vida artificial intenta trascender las INTRODUCCIÓN > Bases de la Vida Artificial limitaciones del estudio de la vida en la tierra, basada en la química del carbono, basándose en la premisa de que la vida es una propiedad de la organización de la materia, más que una propiedad de la materia en sí misma.
  8. 8. Las bases de la vida artificial • Método sintético: Síntesis de sistemas INTRODUCCIÓN > Bases de la Vida Artificial complejos a partir de un conjunto de elementos simples que interactúan entre ellos. • Si conseguimos capturar el espíritu esencial del comportamiento de una hormiga, las hormigas virtuales en una colonia simulada se comportarán como las hormigas reales en una colonia real.
  9. 9. Las bases de la vida artificial • Autoorganización: Formación espontánea INTRODUCCIÓN > Bases de la Vida Artificial de patrones o de comportamientos complejos que emergen de la interacción de elementos u organismos más simples. • Emergencia: Propiedad de un sistema en su conjunto que no está contenida en ninguna de sus partes, sino que resulta de la interacción de elementos de ese sistema que actúan siguiendo reglas locales y a un nivel inferior.
  10. 10. Las bases de la vida artificial • Niveles de organización: La vida, tal INTRODUCCIÓN > Bases de la Vida Artificial y como la conocemos en la tierra, está organizada al menos en 4 niveles diferentes: – Nivel molecular. – Nivel celular. – Nivel de organismo. – Nivel de población o ecosistema.
  11. 11. Las bases de la vida artificial • Hay que distinguir entre la perspectiva de un observador externo y la del propio ente analizado. INTRODUCCIÓN > Bases de la Vida Artificial • En concreto, las descripciones del comportamiento de una criatura desde la perspectiva del observador no deben ser tomadas como una descripción de los mecanismos internos del comportamiento de esa criatura. • El comportamiento de una criatura es siempre el resultado de una interacción entre el sistema y el entorno. No puede nunca ser explicado únicamente en términos del mecanismo interno de la propia criatura. • Comportamientos aparentemente complejos no necesitan forzosamente mecanismos internos complejos. De igual forma, comportamientos sencillos no son necesariamente el resultado de mecanismos internos simples.
  12. 12. Modelos lineales vs. no lineales • Los modelos lineales son incapaces de describir muchos fenómenos naturales. • En un modelo lineal, el todo es igual a la suma de las partes, y pequeños cambios en cualquier parámetro del modelo tiene poca influencia sobre INTRODUCCIÓN > Modelos lineales el comportamiento global del mismo. • Se puede observar como numerosos fenómenos como el tiempo atmosférico, el crecimiento de las plantas, los atascos de trafico, las bandadas de aves, los movimientos de los mercados financieros o de stocks, el desarrollo de organismos pluricelulares, la formación de patrones en la naturaleza (como en las conchas de mar o las mariposas), la evolución, la inteligencia y demás han sido imposibles de representar con un modelo lineal.
  13. 13. Modelos lineales vs. no lineales • Los modelos no lineales, por el contrario, muestran unas características totalmente diferentes de las que muestran los modelos lineales: INTRODUCCIÓN > Modelos no lineales – Caos: Cambios muy pequeños en algún parámetro o en las condiciones iniciales conducen a situaciones cualitativamente diferentes. – Fenómenos emergentes: Aparición de fenómenos en niveles superiores que no fueron explícitamente modelizados. – Como principal inconveniente, los modelos no lineales habitualmente no pueden ser resueltos de forma analítica, al contrario que los modelos lineales. El estudio de los modelos no lineales solamente ha sido posible mediante ordenadores. • Los modelos que estudia la vida artificial son siempre no lineales.
  14. 14. Índice • Introducción • Patrones emergentes • Autómatas celulares • Modelos basados en agentes • Inteligencia distribuida • Evolución artificial • Química artificial • Ejemplos • Bibliografía
  15. 15. Sistemas de Lindenmeyer • Los sistemas de Lindenmayer o L-systems son un formalismo matemático propuesto en 1968 por el biólogo Aristid Lindenmayer como base para una PATRONES EMERGENTES > L-Systems teoría axiomática sobre el desarrollo biológico. • La idea básica es el concepto de reescritura, de tal forma que las partes de un objeto simple son reemplazadas utilizando unas reglas determinadas de reescritura. • Su aplicación es fundamentalmente para el modelado realista de plantas y en fractales. • Se basan en reglas simbólicas de generación de estructuras gráficas a partir de cadenas de caracteres. • Solamente hace falta una pequeña cantidad de información para representar objetos muy complejos.
  16. 16. PATRONES EMERGENTES > L-Systems Sistemas de Lindenmeyer
  17. 17. PATRONES EMERGENTES > L-Systems Sistemas de Lindenmeyer • Aunque los sistemas de Lindenmeyer no generan directamente imágenes, sino secuencias enormes de símbolos, se puede interpretar de tal forma que permitan visualizarse gráficamente como gráficos de tipo tortuga (los gráficos tipo tortuga fueron creados por Seymour Papert para el lenguaje LOGO).
  18. 18. PATRONES EMERGENTES > L-Systems Sistemas de Lindenmeyer
  19. 19. Agregación por difusión (DLA) • "Diffusion limited aggregation, a kinetic critical phenomena“, Physical Review Letters, num. 47, publicado en 1981. • Permite reproducir el crecimiento de algunas entidades vegetales como musgos, algas o PATRONES EMERGENTES > DLA líquenes, y de procesos químicos como la electrolisis o la cristalización de ciertos compuestos. • Consiste en liberar un número de partículas móviles dentro de un recinto acotado donde previamente hemos fijado una o más partículas. • Las partículas liberadas permanecen en movimiento browniano hasta que alcancen alguna célula contigua fija, en cuyo caso se fijan también.
  20. 20. PATRONES EMERGENTES > DLA Agregación por difusión (DLA)
  21. 21. PATRONES EMERGENTES > DLA Agregación por difusión (DLA)
  22. 22. PATRONES EMERGENTES > DLA Agregación por difusión (DLA)
  23. 23. PATRONES EMERGENTES > DLA Agregación por difusión (DLA)
  24. 24. Índice • Introducción • Patrones emergentes • Autómatas celulares • Modelos basados en agentes • Inteligencia distribuida • Evolución artificial • Química artificial • Ejemplos • Bibliografía
  25. 25. Autómatas celulares • Modelo discreto estudiado en la teoría de la computabilidad y en matemáticas. • Consiste en una matriz o rejilla regular e infinita de AUTÓMATAS CELULARES > Descripción células, cada una en un estado determinado dentro de un conjunto finito de ellos. • La matriz puede tener cualquier numero finito de dimensiones. • El tiempo también es tratado de forma discreta, y el estado de una celda de la rejilla en el instante de tiempo t es una función de los estados de un subconjunto finito de celdas denominado vecindario en el instante t-1. • El vecindario de una celda determinada esta definido por un subconjunto de las celdas situadas en ciertas posiciones relativas a la celda analizada, y no cambia. • Cada celda tiene las mismas reglas para su evolución, dependientes de los valores de sus vecinos. • En cada instante de tiempo se aplican dichas reglas a toda la rejilla, produciéndose una nueva generación.
  26. 26. AUTÓMATAS CELULARES > Wolfram Autómatas celulares de Wolfram • Estudiados por Stephen Wolfram a principios de los 80. • Autómatas unidimensionales con un vecindario de 1 celda alrededor de la analizada. • Hay 256 autómatas celulares elementales, cada uno de ellos con un “número de Wolfram” asociado.
  27. 27. AUTÓMATAS CELULARES > Wolfram Autómatas celulares de Wolfram
  28. 28. AUTÓMATAS CELULARES > Wolfram Autómatas celulares de Wolfram
  29. 29. Las 4 clases de CAs de Wolfram • Clase I (Vacía): El sistema tiende a ser espacialmente homogéneo. Las formas o patrones desaparecen con el tiempo. Pequeños cambios en las condiciones iniciales no ocasionan cambios en el estado final. AUTÓMATAS CELULARES > Wolfram • Clase II (Estable o periódica): Conduce a una secuencia simple estable o periódica. Corresponde a un atractor puntual o a un atractor periódico. Los cambios pequeños en las condiciones iniciales producen cambios solamente en una región de tamaño finito. • Clase III (Caótica): Surge un comportamiento caótico no periódico. Las formas o patrones crecen indefinidamente a una velocidad constante. Los cambios en las condiciones iniciales producen cambios en una región de tamaño creciente. • Clase IV (Compleja): Corresponden a complicadas estructuras localizadas, algunas de las cuales se expanden. Las formas o patrones crecen y se contraen con el tiempo. Cambios pequeños en las condiciones iniciales ocasionan cambios irregulares.
  30. 30. AUTÓMATAS CELULARES > Wolfram Ejemplos de CAs de clase IV
  31. 31. AUTÓMATAS CELULARES > Wolfram Conchas de mar
  32. 32. El juego de la vida de Conway • Inventado por el matemático inglés John Conway y AUTÓMATAS CELULARES > Juego de la vida publicado en un artículo de Martin Gardner en la revista Scientific American en 1970. • Retícula bidimensional, en cada casilla puede haber una o ninguna célula (binario). • El vecindario son las 8 casillas de alrededor. • Reglas muy simples: – Supervivencia: Una célula sobrevive si en su vecindario hay 2 ó 3 células vivas. – Muerte: Una célula rodeada por otras 4 muere por superpoblación. Si está rodeada por una o ninguna, muere por aislamiento. – Nacimiento: Una casilla vacía rodeada por exactamente tres células da lugar al nacimiento de una nueva célula. • El resultado es un sistema Turing-Complete.
  33. 33. AUTÓMATAS CELULARES > Juego de la vida El juego de la vida de Conway
  34. 34. AUTÓMATAS CELULARES > Juego de la vida El juego de la vida de Conway
  35. 35. Índice • Introducción • Patrones emergentes • Autómatas celulares • Modelos basados en agentes • Inteligencia distribuida • Evolución artificial • Química artificial • Ejemplos • Bibliografía
  36. 36. Modelos basados en agentes • Es un modelo computacional basado en el análisis de individuos específicos situados en un medio, para el estudio de sistemas complejos. • El modelo fue desarrollado conceptualmente a finales de los 40s, y tuvo que esperar a la llegada de los ordenadores para poder realizarse adecuadamente. AGENTES > Descripción • La idea es construir los agentes o dispositivos computacionales y simularlos en paralelo para conseguir modelar el fenómeno real que de quiere analizar. • El proceso que resulta es la emergencia desde los niveles mas bajos del sistema social (micro) hasta los niveles mas altos (macro).
  37. 37. Modelos basados en agentes • Las simulaciones basadas en agentes tienen dos componentes esenciales: – Agentes – Medio • El medio tiene cierta autonomía respecto a lo que hacen los agentes, aunque puede ser AGENTES > Descripción modificado por el comportamiento de éstos. • Se simula la interacción de los agentes entre ellos, así como la interacción de los agentes con el entorno que les rodea.
  38. 38. Sociedades artificiales • Charlotte Hemelrijk investigó (1998) la estructura emergente en sociedades de primates reales y simuladas. • Las criaturas son capaces de moverse y verse mutuamente. Si alguna criatura nota que otra está en su espacio, entran en un enfrentamiento. • Las relaciones de dominación se rigen por un principio de auto-refuerzo: quien gana una pelea tiene más posibilidades de ganar la siguiente, y al contrario. • Si no hay enfrentamiento, siguen ciertas reglas básicas de movimiento para mantenerles juntos, ya que son criaturas AGENTES > Chimps que viven en grupos. • Es innecesario considerar la representación de una estructura jerárquica en las mentes individuales de los chimancés, ya que surge espontáneamente como estructura emergente.
  39. 39. AGENTES > Chimps Sociedades artificiales
  40. 40. Sociedades artificiales • Las interacciones entre los chimpancés artificiales están causadas únicamente por la proximidad, no por consideraciones estratégicas. • Surge una jerarquía de dominación y una estructura social y espacial en la que los dominantes están en el centro y los subordinados en la periferia, semejante a la que existe en algunas especies de primates. • Para un observador externo, da la impresión de que el apoyo en las peleas es recompensado, a pesar de la ausencia de motivación explícita para hacerlo. AGENTES > Chimps • Esto es consecuencia de que al huir del rango de ataque del oponente, la víctima entra en el espacio de otro oponente diferente. Esta situación termina de forma habitual cuando la estructura espacial ha cambiado y las dos criaturas cooperantes se atacan entre sí.
  41. 41. AGENTES > Chimps Sociedades artificiales
  42. 42. Índice • Introducción • Patrones emergentes • Autómatas celulares • Modelos basados en agentes • Inteligencia distribuida • Evolución artificial • Química artificial • Ejemplos • Bibliografía
  43. 43. Inteligencia distribuida • Estrategias complejas de comportamiento de un grupo en las que no existe un mando central. INTELIGENCIA DISTRIBUÍDA > Descripción • Surgen a partir de “comportamientos emergentes”. • Se producen en un grupo como conjunto, pero no están programadas explícitamente en ninguno de los miembros del grupo. • Reglas simples de comportamiento en los miembros del grupo pueden dar como resultado un comportamiento complejo del grupo en general. • El grupo es capaz de solucionar problemas complejos a partir únicamente de información local. • Ejemplos: Insectos sociales, sistemas inmunológicos, procesamiento en redes neuronales.
  44. 44. Didabots • Experimento llevado a cabo en 1996, estudiando el comportamiento colectivo INTELIGENCIA DISTRIBUÍDA > Didabots de robots simples, llamados Didabots. • La idea principal es comprobar que patrones aparentemente complejos de comportamiento pueden ser consecuencia de reglas muy simples que guíen las interacciones entre las entidades y el entorno. • Esta idea ha sido aplicada con éxito por ejemplo al estudio del comportamiento de insectos sociales.
  45. 45. Didabots • Sensores de infrarrojos para INTELIGENCIA DISTRIBUÍDA > Didabots detectar proximidad en un rango de unos 5 cm. • Programados únicamente para esquivar obstáculos. • Estimulación sensorial a la izquierda causa un pequeño giro a la derecha y viceversa.
  46. 46. INTELIGENCIA DISTRIBUÍDA > Didabots Didabots
  47. 47. Didabots • Inicialmente los cubos están distribuidos aleatoriamente. • Con el tiempo, se empiezan a formar agrupaciones de cubos. Al final, hay dos grandes montones de cubos y INTELIGENCIA DISTRIBUÍDA > Didabots algunos otros dispersos por los bordes de la pista. • El experimento fue repetido muchas veces y el resultado es muy consistente. • Aparentemente los Didabots están limpiando la pista, agrupando los bloques, visto desde la perspectiva de un observador externo. • La programación real de los robots fue únicamente evitar obstáculos. • Esto ocurre porque cuando el Didabot tiene un cubo exactamente delante no es capaz de detectarlo y lo empuja hasta que colisiona con otro cubo que lo desvía ligeramente y entra en el campo de uno de los sensores, el Didabot cambia ligeramente su rumbo entonces y lo abandona.
  48. 48. INTELIGENCIA DISTRIBUÍDA > Insectos sociales Los insectos sociales • La principal cualidad de los llamados insectos sociales, hormigas o abejas, es la de formar parte de un grupo auto- organizado, cuya palabra clave es la simplicidad. • Estos insectos resuelven los problemas complejos gracias a la suma de interacciones simples entre cada individuo.
  49. 49. INTELIGENCIA DISTRIBUÍDA > Insectos sociales Las abejas • La distribución de las crías y del alimento en un panal de abejas no es al azar. • La región central en que se sitúan las crías está cerca de una región que contiene polen y de otra que contiene néctar (aportando proteínas y carbohidratos a las éstas). • La distribución a nivel local está cambiando constantemente debido a la entrada y salida de polen y néctar, pero se mantiene estable a nivel global.
  50. 50. INTELIGENCIA DISTRIBUÍDA > Insectos sociales Las abejas • Esto no es resultado de que una abeja esté coordinando el proceso, sino de la interacción entre ciertas reglas simples que sigue cada abeja a nivel local: – Depositar las crías en celdas cercanas a las que ya tengan crías. – Depositar néctar y polen en celdas cualesquiera, pero vaciar antes las celdas más cercanas a donde estén las crías. – Extraer más polen que néctar.
  51. 51. INTELIGENCIA DISTRIBUÍDA > Insectos sociales Las abejas • Las abejas mantienen la estabilidad térmica de la colmena mediante un mecanismo descentralizado en el cual cada abeja actúa subjetiva y localmente. • Si el calor aprieta, las obreras empiezan a agobiarse y aletean para expulsar del nido el aire caliente. También se agobian cuando refresca, y entonces se apiñan y calientan el nido con la suma de sus cuerpos. • Una colonia típica proviene de una sola madre (la reina), pero de muchos padres (entre 10 y 30) y por tanto tiene una alta variabilidad genética, y no ocurre que todas las abejas se agobien al mismo tiempo, consiguiéndose una estabilidad térmica.
  52. 52. INTELIGENCIA DISTRIBUÍDA > Insectos sociales Las hormigas • Las hormigas son capaces de encontrar el camino más corto entre una fuente de comida y su respectivo hormiguero sin utilizar claves visuales. • Son además capaces de encontrar un nuevo camino, que sea el más corto, cuando se introduce un nuevo obstáculo que impide utilizar el viejo camino. • Aunque una hormiga aislada se mueve al azar, prefiere seguir un camino rico en feromonas. En grupo, por tanto, son capaces de formar y mantener un camino a través de los rastros de feromonas que van dejando al pasar. • Las hormigas que eligen el camino más corto llegarán antes. Por lo tanto, el camino más corto recibirá una mayor concentración de feromonas en una cierta unidad de tiempo. Como consecuencia, un mayor número de hormigas elegirá este nuevo camino más corto.
  53. 53. INTELIGENCIA DISTRIBUÍDA > Insectos sociales Las hormigas
  54. 54. Boids (bird-oids) • Fueron creados a mediados de los 80 por el animador Craig Reynolds. • Reglas muy sencillas de comportamiento: INTELIGENCIA DISTRIBUÍDA > Boids – Evitar las colisiones. Para ello solamente se tiene en cuenta la posición de los otros boids, no su velocidad. – Intentar mantener la misma velocidad que los boids cercanos. En este caso solamente se considera la velocidad de los otros boids. – Intentar mantenerse en el centro de gravedad del grupo de boids percibidos alrededor. Si el boid está en la periferia del grupo, esto ocasiona un agrupamiento hacia el centro.
  55. 55. INTELIGENCIA DISTRIBUÍDA > Boids Boids (bird-oids)
  56. 56. Índice • Introducción • Patrones emergentes • Autómatas celulares • Modelos basados en agentes • Inteligencia distribuida • Evolución artificial • Química artificial • Ejemplos • Bibliografía
  57. 57. Auto-replicación • La auto-replicación es el proceso por el que algo hace copias de sí mismo. • Las células biológicas, en un entorno adecuado, se reproducen mediante división. • Los virus biológicos se reproducen mediante EVOLUCIÓN > Auto-replicación el uso de los mecanismos reproductivos de las células a las que infectan. • Los virus de ordenador se reproducen a sí mismos usando el hardware y el software presente de antemano en los ordenadores. • Los memes se reproducen usando la mente humana como su maquinaria reproductiva.
  58. 58. Autómatas Celulares • En 1948 el matemático Von Neumann encaró el problema de la autoreplicación desde un punto de vista abstracto. Utilizó autómatas celulares para abordar la cuestión y demostró por primera vez la necesidad de distinguir entre software y hardware. EVOLUCIÓN > Autómatas Celulares • Desafortunadamente, los autómatas auto-reproductores de Von Neumann eran demasiado grandes (80x400) y complicados (29 estados) para poder ser implementados. • En 1968, E. F. Codd redujo el número de estados necesarios de 29 a 8 introduciendo el concepto de envolturas, dos capas que envuelven el hilo de flujo de la información, conteniéndolo y protegiéndolo. • En 1979, C. Langton crea un automata con capacidad auto- reproductora, eliminando la capacidad de construcción universal de Von Neumann y Codd para crear un autómata cuya característica es únicamente ser capaz de reproducirse a sí mismo.
  59. 59. EVOLUCIÓN > Autómatas Celulares Langton Loops
  60. 60. Core War • Es un juego publicado en mayo de 1984 en Scientific American, en el que dos o más programas, escritos en un lenguaje ensamblador especial llamado Redcode, se enfrentan para conquistar toda la memoria del ordenador. • Se ejecuta en una máquina virtual llamada MARS (Memory Array Redcode Simulator). EVOLUCIÓN > Core War • Inspirado en Creeper, un programa que se autorreplicaba en memoria hasta desplazar a programas mas útiles (“virus”), y Reaper, creado para buscar y destruir copias de Creeper. • Los programas luchadores se reproducen e intentan corromper el código de los contrarios. • No hay mutaciones.
  61. 61. EVOLUCIÓN > Evolución genética Evolución genética
  62. 62. Biomorfos • Creados por Richard Dawkins en el tercer capítulo de su libro “The Blind Watchmaker” (El relojero ciego). • El programa pone de relieve la potencia de las micromutaciones y la selección acumulativa. EVOLUCIÓN > Biomorfos • Biomorph Viewer permite moverse a través del espacio genético (de 9 dimensiones en este caso) e ir eligiendo la forma deseada. • El ojo del usuario realiza el papel de selección natural.
  63. 63. EVOLUCIÓN > Biomorfos Biomorfos
  64. 64. Criaturas virtuales de Karl Sims • Creados por Karl Sims en 1994. EVOLUCIÓN > Criaturas virtuales de Karl Sims • Sims hace evolucionar la morfología y el control neuronal de las criaturas. • Sims fue uno de los primeros en usar un entorno tridimensional con física simulada en el contexto de las aplicaciones de realidad virtual. • La simulación de las leyes físicas incluye tener en cuenta la gravedad, fricción, detección y respuesta a las colisiones y efectos viscosos de los fluídos (por ejemplo en el agua simulada). • Debido a esta física simulada, estos agentes interactúan de formas inesperadas con el entorno.
  65. 65. EVOLUCIÓN > Criaturas virtuales de Karl Sims Criaturas virtuales de Karl Sims
  66. 66. EVOLUCIÓN > Criaturas virtuales de Karl Sims Criaturas virtuales de Karl Sims
  67. 67. Algoritmos evolutivos • Algoritmos Genéticos: La forma mas común de algoritmos evolutivos. Buscan la solución a un problema en forma de texto o EVOLUCIÓN > Algoritmos evolutivos de números (habitualmente en binario), aplicando operadores de mutación y recombinación y realizando una selección. • Programación Genética: Las soluciones en este caso son programas de ordenador, y su idoneidad esta determinada por su capacidad para resolver un problema computacional.
  68. 68. EVOLUCIÓN > Algoritmos genéticos Algoritmos genéticos
  69. 69. EVOLUCIÓN > Programación genética Programación genética
  70. 70. El programa Tierra • Creado por el biólogo Thomas Ray, inspirándose en el juego “Core Wars”. • Las criaturas están compuestas por una secuencia de instrucciones en un lenguaje ensamblador simplificado que se ejecuta sobre una máquina virtual. • El universo de estas criaturas es un ordenador virtual, y éstas compiten por espacio (memoria en el ordenador) y energía (ciclos de CPU). EVOLUCIÓN > Tierra • La máquina virtual está diseñada con una pequeña tasa de error para permitir mutaciones en la copia de las criaturas, de forma análoga a la mutación natural. • Se añade un programa que se encargue de matar a algunos de los organismos, de forma análoga a las catástrofes naturales.
  71. 71. El programa Tierra • Al inicio se sitúa en el universo un único organismo, escrito a mano por Ray, que simplemente se reproduce. Tiene una longitud de 80 instrucciones y tarda 800 ciclos en replicarse. • Cuando el espacio se rellena en un 80%, los organismos comienzan a competir por memoria y por CPU. • Comienzan a surgir mutaciones de 79 EVOLUCIÓN > Tierra instrucciones, y algo más tarde aún menores, debido a que la evolución de los organismos ha comenzado a optimizar el código.
  72. 72. El programa Tierra • Surge un organismo de solamente 45 instrucciones y empieza a reproducirse con éxito. 45 instrucciones está bastante por debajo del número mínimo de instrucciones necesarias para la replicación. • Estos organismos coexisten con otros de longitudes superiores a las 70 instrucciones. • Parece haber alguna relación entre el número de organismos cortos y el número de organismos más EVOLUCIÓN > Tierra largos. • Estos organismos cortos no incorporan dentro de ellos el código necesario para su replicación, sino que usan el que tienen los organismos largos de forma parasitaria para su replicación.
  73. 73. El programa Tierra • Surge un organismo de gran longitud que ha desarrollado inmunidad a los parásitos, y es capaz de esconderse de ellos. • Los parásitos evolucionan hacia una criatura de 51 instrucciones que es capaz de localizar a los organismos inmunes. • Aparecen hiperparásitos que son capaces de explotar a los parásitos. EVOLUCIÓN > Tierra • Estos hiperparásitos comienzan a cooperar entre ellos explotándose mutuamente. • El sistema continúa evolucionando con criaturas con actitudes competitivas y cooperativas, sorprendiendo constantemente a su creador.
  74. 74. EVOLUCIÓN > Tierra El programa Tierra • Numerosos anfitriones (rojo) • Aparecen algunos parásitos (amarillo)
  75. 75. EVOLUCIÓN > Tierra El programa Tierra • Los parásitos han aumentado mucho. • Los anfitriones en disminución. • Aparecen las primeras criaturas inmunes (azul)
  76. 76. EVOLUCIÓN > Tierra El programa Tierra • Los parásitos son desplazados espacialmente. • Las criaturas no resistentes disminuyen aún más. • Las criaturas inmunes aumentan y desplazan a los parásitos.
  77. 77. EVOLUCIÓN > Tierra El programa Tierra • Los parásitos escasean aún más. • Las criaturas no resistentes continúan disminuyendo. • Las criaturas inmunes son la forma de vida dominante.
  78. 78. El programa AVida • Avida es un sistema genético autoadaptativo diseñado para poder usarlo como plataforma en investigación de vida digital. • Genera un mundo virtual en el que los programas mutan y evolucionan. • Incorpora la programación genética al mundo virtual. EVOLUCIÓN > Avida • Es semejante a Tierra, pero: – Tiene una CPU virtual para cada programa. – Puede evolucionar para algo más que la simple reproducción. Función de ajuste configurable.
  79. 79. EVOLUCIÓN > Avida El programa AVida
  80. 80. El programa Physis • Physis va un paso más adelante: – 1ª Fase: Construcción de la estructura del procesador y el set de instrucciones de acuerdo a la descripción que haya en el genoma. – 2ª Fase: Ejecución del código con el procesador recién construido. EVOLUCIÓN > Physis
  81. 81. Índice • Introducción • Patrones emergentes • Autómatas celulares • Modelos basados en agentes • Inteligencia distribuida • Evolución artificial • Química artificial • Ejemplos • Bibliografía
  82. 82. Química artificial • La química artificial es la simulación en un ordenador de procesos químicos análogos a los que se producen en el mundo real. QUÍMICA ARTIFICIAL > Descripción • Puede constituir la base de un programa de vida artificial, y en tal caso generalmente se simula alguna forma de química orgánica.
  83. 83. Índice • Introducción • Patrones emergentes • Autómatas celulares • Modelos basados en agentes • Inteligencia distribuida • Evolución artificial • Química artificial • Ejemplos • Bibliografía
  84. 84. EJEMPLOS > Juegos > SimLife SimLife
  85. 85. SimLife • Uno de los primeros ejemplos de software de entretenimiento anunciado como basado en investigaciones de vida artificial fue SimLife de Maxis, publicado en 1993. • En esencia, SimLife permite a un usuario EJEMPLOS > Juegos > SimLife observar e interactuar con un ecosistema simulado con un terreno y clima variable, y una gran variedad de especies de plantas, animales herbívoros y carnívoros. • El ecosistema es simulado usando técnicas de autómatas celulares, y hace poco uso de técnicas de agentes autónomos.
  86. 86. EJEMPLOS > Juegos > Creatures Creatures
  87. 87. Creatures • Creatures es un juego creado en 1996 para Windows 95 y Macintosh, y que ofrece la posibilidad de relacionarse con tecnologias de vida artificial. • Creatures genera un entorno simulado en el que coexisten varios agentes sintéticos con los que el usuario puede interactuar en tiempo real. Los agentes, que EJEMPLOS > Juegos > Creatures reciben el nombre de Creatures pretenden ser una especie de "mascotas virtuales". • La arquitectura interna de las criaturas esta inspirada por la biología animal. Cada criatura tiene una red neuronal responsable de la coordinación motor-sensorial y de su comportamiento y una bioquímica artificial que simula un metabolismo energético muy sencillo y un sistema hormonal que interactúa con la red neuronal. Un mecanismo de aprendizaje permite ir adaptándose a la red neuronal durante la vida de la criatura.
  88. 88. EJEMPLOS > Juegos > The Sims The Sims
  89. 89. The Sims • The Sims, creado por Maxis, es quizás el mejor ejemplo de vida artificial y de inteligencia artificial basada en maquinas de estado con lógica difusa que hay ahora mismo en la industria del videojuego. • El juego permite diseñar pequeños edificios virtuales y sus vecindarios y poblarlos con residentes virtuales ("Sims"). EJEMPLOS > Juegos > The Sims Cada Sim puede ser creado con una gran variedad de características físicas y personalidades diferentes. • Los Sims se comportan conforme sea el mundo y los rasgos de personalidad que se les hayan dado. Aunque la mayoría de los Sims son capaces de sobrevivir, necesitan muchos cuidados por parte de la persona que juegue para mejorar. • Los objetos dentro del mundo virtual, denominado "smart terrain" o "terreno inteligente" por su diseñador Will Wright, incorporan dentro de ellos los comportamientos y acciones posibles relacionadas con dicho objeto. Esto permite que nuevos objetos sean añadidos al juego de una forma sencilla.
  90. 90. EJEMPLOS > Galápagos Galápagos
  91. 91. Galápagos • Galápagos es un proyecto de simulación de vida artificial en el que una serie de criaturas evolucionan en el tiempo. • Mediante la implementación de mutaciones y cruces y a través de la selección natural, el resultado es la evolución de diferentes criaturas y el surgimiento de nichos ecológicos. • En esta simulación, las criaturas habitan un territorio que contiene agua, arena, tierra, roca, hierba, etc. • Todas las criaturas tienen 4 patas y una serie de genes EJEMPLOS > Galápagos determinan sus propiedades físicas, así como su sistema digestivo. • El genoma de las criaturas define asimismo un sistema sencillo de comportamiento con lógica difusa. • Las simulaciones comienzan típicamente con herbívoros sin gran inteligencia y gran mortalidad, y acaban surgiendo diferentes caminos evolutivos que conducen a la aparición de animales carroñeros y de carnívoros.
  92. 92. EJEMPLOS > FramSticks FramSticks
  93. 93. FramSticks • El objetivo es estudiar las capacidades de evolución en condiciones similares a las de la tierra, aunque simplificadas. • Se usa un entorno tridimensional, representación de los organismos mediante un genoma, estructura física (cuerpo) y red EJEMPLOS > FramSticks neuronal (mente) definidas en el genotipo, ciclo de comportamiento basado en estímulos (entorno – receptores – mente – effectores – entorno), operaciones de reconfiguración del genotipo (mutación, cruce), necesidades energéticas y especialización.
  94. 94. Índice • Introducción • Patrones emergentes • Autómatas celulares • Modelos basados en agentes • Inteligencia distribuida • Evolución artificial • Química artificial • Ejemplos • Bibliografía
  95. 95. Bibliografía • Tierra: www.his.atr.jp/~ray/tierra/ • Avida: http://dllab.caltech.edu/avida/ • Physis: http://physis.sourceforge.net/ • Galápagos: http://www.lysator.liu.se/~mbrx/galapagos/ • Wikipedia: www.wikipedia.org • Curso sobre Vida Artificial por la Universidad de Zurich: http://ailab.ch/teaching/classes/2003ss/alife • Curso sobre Vida Artificial: http://www.ifi.unizh.ch/groups/ailab/teaching/AL00.html • Vida artificial, Un enfoque desde la Informática Teórica: http://members.tripod.com/~MoisesRBB/vida.html • Digitales Leben: http://homepages.feis.herts.ac.uk/~comqdp1/Studienstiftung/tierra_avida _hysis.ppt • GNU/Linux AI & Alife HOWTO: http://zhar.net/gnu- linux/howto/html/ai.html • Matrem: www.phys.uu.nl/~romans/
  96. 96. Bibliografía • Diffusion-Limited Aggregation: http://classes.yale.edu/fractals/Panorama/Physics/DLA/DLA.html • DLA - Diffusion Limited Aggregation: http://astronomy.swin.edu.au/~pbourke/fractals/dla/ • John Conway's solitaire game "life“: http://ddi.cs.uni- potsdam.de/HyFISCH/Produzieren/lis_projekt/proj_gamelife/ConwaySci entificAmerican.htm • Boids, background and update, by Craig Reynolds: http://www.red3d.com/cwr/boids/ • Flocks, Herds, and Schools: A Distributed Behavioral Model: http://www.cs.toronto.edu/~dt/siggraph97-course/cwr87/ • Creatures: Artificial Life Autonomous Software Agents for Home Entertainment: http://mrl.snu.ac.kr/CourseSyntheticCharacter/grand96creatures.pdf • Evolving Virtual Creatures: http://www.genarts.com/karl/papers/siggraph94.pdf • Core War, artículos escaneados de A.K. Dewdney: http://www.koth.org/info/sciam/ • FramSticks: http://www.frams.alife.pl/ • StarLogo: http://education.mit.edu/starlogo/

×