Vida Artificial
Miriam Ruiz
Índice• Introducción
• Patrones emergentes
• Autómatas celulares
• Modelos basados en agentes
• Inteligencia distribuida
• Evolución artificial
• Química artificial
• Ejemplos
• Bibliografía
• 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 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?
¿Qué es la vida?IN
TR
OD
UC
CIÓ
N >
Qu
é e
s la
Vid
a
• Estudio de sistemas artificiales que muestran comportamientos 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".
¿Qué es la vida artificial?IN
TR
OD
UC
CIÓ
N >
Qu
é e
s la
Vid
a A
rtif
icia
l
Los investigadores en vida artificial a menudo son divididos en 2 grandes grupos:
• 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.
¿Qué es la vida artificial?IN
TR
OD
UC
CIÓ
N >
Qu
é e
s la
Vid
a A
rtif
icia
l
• El objetivo del estudio de la vida artificial no es solamente crear modelos biológicos de 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.
¿Qué es la vida artificial?IN
TR
OD
UC
CIÓ
N >
Qu
é e
s la
Vid
a A
rtif
icia
l
• La vida artificial intenta trascender las 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.
Las bases de la vida artificialIN
TR
OD
UC
CIÓ
N >
Ba
ses
de
la V
ida
Art
ific
ial
• Método sintético: Síntesis de sistemas 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.
Las bases de la vida artificialIN
TR
OD
UC
CIÓ
N >
Ba
ses
de
la V
ida
Art
ific
ial
• Autoorganización: Formación espontánea 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.
Las bases de la vida artificialIN
TR
OD
UC
CIÓ
N >
Ba
ses
de
la V
ida
Art
ific
ial
Las bases de la vida artificial• Niveles de organización: La vida, tal
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.
INT
RO
DU
CC
IÓN
> B
as
es d
e la
Vid
a A
rtif
icia
l
• Hay que distinguir entre la perspectiva de un observador externo y la del propio ente analizado.
• 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.
Las bases de la vida artificialIN
TR
OD
UC
CIÓ
N >
Ba
ses
de
la V
ida
Art
ific
ial
• 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 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.
Modelos lineales vs. no linealesIN
TR
OD
UC
CIÓ
N >
Mo
de
los
lin
eal
es
• Los modelos no lineales, por el contrario, muestran unas características totalmente diferentes de las que muestran los modelos 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.
Modelos lineales vs. no linealesIN
TR
OD
UC
CIÓ
N >
Mo
de
los
no
lin
ea
les
Índice• Introducción
• Patrones emergentes
• Autómatas celulares
• Modelos basados en agentes
• Inteligencia distribuida
• Evolución artificial
• Química artificial
• Ejemplos
• Bibliografía
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 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.P
AT
RO
NE
S E
ME
RG
EN
TE
S >
L-S
yst
em
s
Sistemas de LindenmeyerP
AT
RO
NE
S E
ME
RG
EN
TE
S >
L-S
yst
em
s
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).
PA
TR
ON
ES
EM
ER
GE
NT
ES
> L
-Sy
ste
ms
Sistemas de LindenmeyerP
AT
RO
NE
S E
ME
RG
EN
TE
S >
L-S
yst
em
s
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 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.
PA
TR
ON
ES
EM
ER
GE
NT
ES
> D
LA
Agregación por difusión (DLA)P
AT
RO
NE
S E
ME
RG
EN
TE
S >
DL
A
Agregación por difusión (DLA)P
AT
RO
NE
S E
ME
RG
EN
TE
S >
DL
A
Agregación por difusión (DLA)P
AT
RO
NE
S E
ME
RG
EN
TE
S >
DL
A
Agregación por difusión (DLA)P
AT
RO
NE
S E
ME
RG
EN
TE
S >
DL
A
Índice• Introducción
• Patrones emergentes
• Autómatas celulares
• Modelos basados en agentes
• Inteligencia distribuida
• Evolución artificial
• Química artificial
• Ejemplos
• Bibliografía
• Modelo discreto estudiado en la teoría de la computabilidad y en matemáticas.
• Consiste en una matriz o rejilla regular e infinita de 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.
Autómatas celularesA
UT
ÓM
AT
AS
CE
LU
LA
RE
S >
Des
cri
pci
ón
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.A
UT
ÓM
AT
AS
CE
LU
LA
RE
S >
Wo
lfra
m
Autómatas celulares de WolframA
UT
ÓM
AT
AS
CE
LU
LA
RE
S >
Wo
lfra
m
Autómatas celulares de WolframA
UT
ÓM
AT
AS
CE
LU
LA
RE
S >
Wo
lfra
m
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.
• 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.
AU
TÓ
MA
TA
S C
EL
UL
AR
ES
> W
olf
ram
Ejemplos de CAs de clase IVA
UT
ÓM
AT
AS
CE
LU
LA
RE
S >
Wo
lfra
m
Conchas de marA
UT
ÓM
AT
AS
CE
LU
LA
RE
S >
Wo
lfra
m
El juego de la vida de Conway• Inventado por el matemático inglés John Conway y
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.
AU
TÓ
MA
TA
S C
EL
UL
AR
ES
> J
ue
go
de
la v
ida
El juego de la vida de ConwayA
UT
ÓM
AT
AS
CE
LU
LA
RE
S >
Ju
eg
o d
e la
vid
a
El juego de la vida de ConwayA
UT
ÓM
AT
AS
CE
LU
LA
RE
S >
Ju
eg
o d
e la
vid
a
Índice• Introducción
• Patrones emergentes
• Autómatas celulares
• Modelos basados en agentes
• Inteligencia distribuida
• Evolución artificial
• Química artificial
• Ejemplos
• Bibliografía
• 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.
• 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).
Modelos basados en agentesA
GE
NT
ES
> D
esc
rip
ció
n
• 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 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.
Modelos basados en agentesA
GE
NT
ES
> D
esc
rip
ció
n
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 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.
AG
EN
TE
S >
Ch
imp
s
Sociedades artificialesA
GE
NT
ES
> C
him
ps
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.
• 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í.
AG
EN
TE
S >
Ch
imp
s
Sociedades artificialesA
GE
NT
ES
> C
him
ps
Índice• Introducción
• Patrones emergentes
• Autómatas celulares
• Modelos basados en agentes
• Inteligencia distribuida
• Evolución artificial
• Química artificial
• Ejemplos
• Bibliografía
Inteligencia distribuida• Estrategias complejas de comportamiento de un
grupo en las que no existe un mando central.• 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.
INT
EL
IGE
NC
IA D
IST
RIB
UÍD
A >
De
sc
rip
ció
n
Didabots• Experimento llevado a cabo en 1996,
estudiando el comportamiento colectivo 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.
INT
EL
IGE
NC
IA D
IST
RIB
UÍD
A >
Did
ab
ots
Didabots• Sensores de
infrarrojos para 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.
INT
EL
IGE
NC
IA D
IST
RIB
UÍD
A >
Did
ab
ots
DidabotsIN
TE
LIG
EN
CIA
DIS
TR
IBU
ÍDA
> D
ida
bo
ts
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 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.
INT
EL
IGE
NC
IA D
IST
RIB
UÍD
A >
Did
ab
ots
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.
INT
EL
IGE
NC
IA D
IST
RIB
UÍD
A >
Inse
cto
s s
oci
ale
s
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.
INT
EL
IGE
NC
IA D
IST
RIB
UÍD
A >
Inse
cto
s s
oci
ale
s
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.
INT
EL
IGE
NC
IA D
IST
RIB
UÍD
A >
Inse
cto
s s
oci
ale
s
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.
INT
EL
IGE
NC
IA D
IST
RIB
UÍD
A >
Inse
cto
s s
oci
ale
s
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.
INT
EL
IGE
NC
IA D
IST
RIB
UÍD
A >
Inse
cto
s s
oci
ale
s
Las hormigasIN
TE
LIG
EN
CIA
DIS
TR
IBU
ÍDA
> In
sec
tos
so
cia
les
Boids (bird-oids)• Fueron creados a mediados de los 80
por el animador Craig Reynolds.• Reglas muy sencillas de
comportamiento:– 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.
INT
EL
IGE
NC
IA D
IST
RIB
UÍD
A >
Bo
ids
Boids (bird-oids)IN
TE
LIG
EN
CIA
DIS
TR
IBU
ÍDA
> B
oid
s
Índice• Introducción
• Patrones emergentes
• Autómatas celulares
• Modelos basados en agentes
• Inteligencia distribuida
• Evolución artificial
• Química artificial
• Ejemplos
• Bibliografía
• 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 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.
Auto-replicaciónE
VO
LU
CIÓ
N >
Au
to-r
ep
lica
ció
n
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.
• 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.E
VO
LU
CIÓ
N >
Au
tóm
ata
s C
elu
lare
s
Langton LoopsE
VO
LU
CIÓ
N >
Au
tóm
ata
s C
elu
lare
s
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).
• 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.
EV
OL
UC
IÓN
> C
ore
War
Evolución genéticaE
VO
LU
CIÓ
N >
Ev
olu
ció
n g
ené
tica
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.
• 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.
EV
OL
UC
IÓN
> B
iom
orf
os
BiomorfosE
VO
LU
CIÓ
N >
Bio
mo
rfo
s
Criaturas virtuales de Karl Sims• Creados por Karl Sims en 1994.• 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.
EV
OL
UC
IÓN
> C
ria
tura
s v
irtu
ale
s d
e K
arl S
ims
Criaturas virtuales de Karl SimsE
VO
LU
CIÓ
N >
Cri
atu
ras
vir
tual
es
de
Kar
l Sim
s
Criaturas virtuales de Karl SimsE
VO
LU
CIÓ
N >
Cri
atu
ras
vir
tual
es
de
Kar
l Sim
s
• Algoritmos Genéticos: La forma mas común de algoritmos evolutivos. Buscan la solución a un problema en forma de texto o 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.
Algoritmos evolutivosE
VO
LU
CIÓ
N >
Alg
ori
tmo
s e
vo
luti
vo
s
Algoritmos genéticosE
VO
LU
CIÓ
N >
Alg
ori
tmo
s g
en
étic
os
Programación genéticaE
VO
LU
CIÓ
N >
Pro
gra
ma
ció
n g
en
éti
ca
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).
• 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.E
VO
LU
CIÓ
N >
Tie
rra
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 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.
EV
OL
UC
IÓN
> T
ierr
a
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 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.
EV
OL
UC
IÓN
> T
ierr
a
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.
• 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.
EV
OL
UC
IÓN
> T
ierr
a
El programa Tierra
• Numerosos anfitriones (rojo)• Aparecen algunos parásitos (amarillo)
EV
OL
UC
IÓN
> T
ierr
a
El programa Tierra
• Los parásitos han aumentado mucho.• Los anfitriones en disminución.• Aparecen las primeras criaturas inmunes (azul)E
VO
LU
CIÓ
N >
Tie
rra
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.E
VO
LU
CIÓ
N >
Tie
rra
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.E
VO
LU
CIÓ
N >
Tie
rra
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.
• 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.
EV
OL
UC
IÓN
> A
vid
a
El programa AVidaE
VO
LU
CIÓ
N >
Av
ida
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.
EV
OL
UC
IÓN
> P
hys
is
Índice• Introducción
• Patrones emergentes
• Autómatas celulares
• Modelos basados en agentes
• Inteligencia distribuida
• Evolución artificial
• Química artificial
• Ejemplos
• Bibliografía
• 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.
• Puede constituir la base de un programa de vida artificial, y en tal caso generalmente se simula alguna forma de química orgánica.
Química artificialQ
UÍM
ICA
AR
TIF
ICIA
L >
Des
cri
pci
ón
Índice• Introducción
• Patrones emergentes
• Autómatas celulares
• Modelos basados en agentes
• Inteligencia distribuida
• Evolución artificial
• Química artificial
• Ejemplos
• Bibliografía
SimLifeE
JE
MP
LO
S >
Ju
ego
s >
Sim
Lif
e
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 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.
EJ
EM
PL
OS
> J
ueg
os
> S
imL
ife
CreaturesE
JE
MP
LO
S >
Ju
ego
s >
Cre
atu
res
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 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.
EJ
EM
PL
OS
> J
ueg
os
> C
rea
ture
s
The SimsE
JE
MP
LO
S >
Ju
ego
s >
Th
e S
ims
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"). 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.E
JE
MP
LO
S >
Ju
ego
s >
Th
e S
ims
GalápagosE
JE
MP
LO
S >
Gal
áp
ag
os
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 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.
EJ
EM
PL
OS
> G
alá
pa
go
s
FramSticksE
JE
MP
LO
S >
Fra
mS
tic
ks
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 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.E
JE
MP
LO
S >
Fra
mS
tic
ks
Índice• Introducción
• Patrones emergentes
• Autómatas celulares
• Modelos basados en agentes
• Inteligencia distribuida
• Evolución artificial
• Química artificial
• Ejemplos
• Bibliografía
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/
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/ConwayScientificAmerican.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/