framsticks un modelo 3d de vida artificial (autores: m. komosinski, s. ulatowski)

30
Framsticks Un Modelo 3D de Vida Artificial (Autores: M. Komosinski, S. Ulatowski) http://www.frams.poznan.pl/

Upload: anselmo-candella

Post on 23-Jan-2016

215 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Framsticks Un Modelo 3D de Vida Artificial (Autores: M. Komosinski, S. Ulatowski)

Framsticks

Un Modelo 3D de Vida Artificial (Autores: M. Komosinski, S. Ulatowski)

http://www.frams.poznan.pl/

Page 2: Framsticks Un Modelo 3D de Vida Artificial (Autores: M. Komosinski, S. Ulatowski)

¿Qué es la Vida Artificial?

Estudio de sistemas hechos por el hombre que exhiben características de los sistemas naturales vivos

Complementa el enfoque analítico de las Cs. biológicas tradicionales, intentando sintetizar comportamientos y estructuras similares a la vida en computadoras y otros medios artificiales

Page 3: Framsticks Un Modelo 3D de Vida Artificial (Autores: M. Komosinski, S. Ulatowski)

Artificial Life

The name is obviously connected with "Artificial Intelligence" – both fields of study partly overlap, but AL has more in common with biology and physics.

Classical AI approach ... disembodied abstract reasoning.

Computing has been enormously successful for abstract problem solving, but led to this insidious popular view that humans and animals think and behave like problem-solving computers

Page 4: Framsticks Un Modelo 3D de Vida Artificial (Autores: M. Komosinski, S. Ulatowski)

Embodied behaviour before abstract rationality

From several directions, particularly in the last decade, has come the realisation that humans are the product of 4 billion years of evolution, and only the last tiny fraction of this period has involved language and reasoning.

If we don’t understand the capacities of simple organisms, how can we hope to understand human capacities?

Cf. Rod Brooks, robot subsumption architecture.This is one motive for doing A-life.

Page 5: Framsticks Un Modelo 3D de Vida Artificial (Autores: M. Komosinski, S. Ulatowski)

OK, so what is Artificial Life?

"Artificial Life is the study of man-made systems that exhibit behaviors characteristic of natural living systems. It complements the traditional biological sciences concerned with the analysis of living organisms by attempting to synthesize life-like behaviors within computers and other artificial media. By extending theempirical foundation upon which biology is based beyond the carbon-chain life that has evolved on Earth, Artificial Life can contribute to theoretical biology by locating life-as-we-know-it within the larger picture of life-as-it-could-be."

Chris Langton (in Proc. of first Alife conference)

Page 6: Framsticks Un Modelo 3D de Vida Artificial (Autores: M. Komosinski, S. Ulatowski)

Alife as conscious echo of AI

Note 2 meanings of 'Artificial':(1) = fake (eg artificial snow)(2) = made by artifice, an artefact, but not fake (eg artificial light)

Two positions you will come across:Weak Alife: computer programs as useful simulations of real lifeStrong Alife: ditto as actually living

Page 7: Framsticks Un Modelo 3D de Vida Artificial (Autores: M. Komosinski, S. Ulatowski)

Is A-life more than Theoretical Biology?

“This paper examines A-Life as theoretical biology, as a set of computer simulation methods that may prove useful to biologists given their native concerns. I will not address A-life as engineering, entertainment, pedagogy, philosophy of biology, or runaway post-modern cult."

*** Geoffrey Miller in 'Artificial Life as Theoretical Biology:How to do real science with computer simulation'COGS CSRP 378 Available on web

Page 8: Framsticks Un Modelo 3D de Vida Artificial (Autores: M. Komosinski, S. Ulatowski)

Yes it is more!

The position I take is:Alife can be used for theoretical biology

--- but then make sure you are working on a problem biologists are interested in.

cf: first explicit Alife paper in Nature v400 12 Aug 1999Lenski et al pp. 661-664And others since

Page 9: Framsticks Un Modelo 3D de Vida Artificial (Autores: M. Komosinski, S. Ulatowski)

Such as …

But Also Alife can and should cover (contra Miller)engineering,entertainment, pedagogy, philosophy of biology, and indeed runaway post-modern cult!

There are many strong differences of views in this field.

Page 10: Framsticks Un Modelo 3D de Vida Artificial (Autores: M. Komosinski, S. Ulatowski)

Descripción General

Modelo 3D de simulación de la evolución de criaturas artificiales

Tanto la estructura física como el sistema de control son evolucionados (algoritmos evolutivos con selección, mutación y cruce)

Método de elementos finitos usado para la simulación del ambiente físico

Dos tipos de Evolución: espontánea y dirigida

Page 11: Framsticks Un Modelo 3D de Vida Artificial (Autores: M. Komosinski, S. Ulatowski)

Suposiciones del Modelo

Un grupo de segmentos conectados constituyen a un organismo independiente, que vive cuando se coloca en el simulador

Segmentos o cilindros: pueden tener varias funciones de acuerdo a su descripción genética Ser solo un segmento Transmitir y procesar señales (ser parte de un cerebro) Ser un receptor Tener músculos y producir movimiento Especializarse en proporcionar energía

Page 12: Framsticks Un Modelo 3D de Vida Artificial (Autores: M. Komosinski, S. Ulatowski)

Módulos del Simulador

Simulación Física - Interacción de organismo con el mundo virtual. Analiza fuerzas que influyen sobre cada segmento y calcula las nuevas posiciones

Neural - Excitaciones de las neuronas, colecta data de los receptores y envía señales a los músculos

Energético - Pérdidas y ganancias de energía. Se gana energía al comer. Se pierde por el trabajo de músculos y neuronas. Muerte al acabarse la energía

Reproductivo – Algoritmo Genético. Creación de nuevos individuos (mutación y cruce). Fitness, varios parámetros (velocidad promedio, tiempo de vida)

Page 13: Framsticks Un Modelo 3D de Vida Artificial (Autores: M. Komosinski, S. Ulatowski)

Las criaturas están hechas de un conjunto de segmentos (sticks) conectados. Los músculos (rojo) están controlados por una red neural que los hace rotar y torcerse

Page 14: Framsticks Un Modelo 3D de Vida Artificial (Autores: M. Komosinski, S. Ulatowski)

Propiedades Biológicas de los Segmentos

Segmento especializado para Ingestión habilidad par tomar energía de la comida: bolas de energia y org. muertos

Segmento especializado para Asimilación Fotosíntesis, un segmento vertical puede asimilar el doble que uno horizontalFuerza del Músculo. Actúan con mas fuerza, ganan mas velocidad, resisten mayor estrés y usan más energía

Otros: Nivel de Estamina, Energía Inicial

Page 15: Framsticks Un Modelo 3D de Vida Artificial (Autores: M. Komosinski, S. Ulatowski)

Propiedades Físicas de los Segmentos

Longitud, Peso, Fricción (deslizarse o aferrarse)

Articulaciones: Rotación, Curvatura, Giro

Fin de segmento con baja fricción (patina, desliza)

Fin de segmento con alta fricción (para caminar)

Segemnto muy fuerte (bueno para colisiones)

Page 16: Framsticks Un Modelo 3D de Vida Artificial (Autores: M. Komosinski, S. Ulatowski)

Receptores o Sensores

3 tipos de Sensores: equilibrio, olfato, tacto

Giroscpio: Orientación en el espacio y sentido del equilibrio

Olfato: Detección de fuentes de comida y energía

Tacto: Detección de contacto físico

Page 17: Framsticks Un Modelo 3D de Vida Artificial (Autores: M. Komosinski, S. Ulatowski)

Experimentos SimuladosEvoluciones Dirigidas: El fitness se define como la velocidad de las criaturas (en el suelo e en agua).

Page 18: Framsticks Un Modelo 3D de Vida Artificial (Autores: M. Komosinski, S. Ulatowski)

Otros Experimentos Mejoramiento por evolución de estructuras predefinidas por el usuario. Ej. Evolución del sistema de control, de morfología prediseñada. Para sobrevivir más (buscar comida)

Page 19: Framsticks Un Modelo 3D de Vida Artificial (Autores: M. Komosinski, S. Ulatowski)

Arquitectura del Sistema

Función de Adaptación: Para cada genotipo se calcula: tiempo de vida, velocidad y distancia (tiempo de vida x velocidad)

Page 20: Framsticks Un Modelo 3D de Vida Artificial (Autores: M. Komosinski, S. Ulatowski)

Tareas en cada Iteración

Si se requiere, crear nuevos organismos en el mundo virtual (depende del valor de la variable n “Criaturas simuladas”)

Calcular siguiente paso del mundo 3D simulado (músculos y neuronas: nuevas posiciones, fuerzas, excitaciones etc.)

Calcular el flujo de Energía Si algunas criaturas se quedan sin energía,

“matarlas” y actualizar su fitness en la lista de genotipos

Page 21: Framsticks Un Modelo 3D de Vida Artificial (Autores: M. Komosinski, S. Ulatowski)

Representación Genética

Basada en símbolos. Varias propuestas Se combina “cuerpo” y “cerebro” en el mismo

genotipo Tanto la morfología (cuerpo hecho de

segmentos), como el control (hecho de neuronas) evolucionan al mismo tiempo

Discutiremos la “codificación directa recurrente”

Page 22: Framsticks Un Modelo 3D de Vida Artificial (Autores: M. Komosinski, S. Ulatowski)

Codificación Directa Recurrente

X - Segmento, () - Ramificación La estructura se construye como un árbol. Nuevos segmentos se conectan con los extremos de los anteriores. Ejemplos:

X(X,X) – Dos segmentos a partir de uno raizX(X,X,X) – Tres segmentos a partir de uno raiz, etc

XXX(X,XX)

X(X,X,) ó X(,X,,,X,,X,,) son válidos. Dentro de los (), el ángulo total se divide en tantas partes como el número de comas + 2. El Segmento tiene mas libertad si tiene mas ángulo.

Page 23: Framsticks Un Modelo 3D de Vida Artificial (Autores: M. Komosinski, S. Ulatowski)

Modificadores en la Codificación

•Se pueden colocar modificadores antes de las X’s y (‘s. Ellos afectan a la siguente X y, usualmente, menos y menos a las subsiguientes X’s

•Modificadores afectan la posición del segmento y sus características

• Se usan letras mayúsculas y minúsculas. Las mayúsculas incrementan una propiedad y las minúsculas la disminuyen

•Modificadores: Rr, Qq, Cc, Ll, Ww, Ff, Aa, Ss, Mm, Ii, Ee

Page 24: Framsticks Un Modelo 3D de Vida Artificial (Autores: M. Komosinski, S. Ulatowski)

Modificadores Propiedades Físicas

RRotación (por 45°) – Este modificador No afecta subsiguientes segmentos

Q Torsión

C Curvatura

Propiedades de las Articulaciones

L Longitud

WPeso (en un ambiente acuático, los segmentos livianos nadan en la superficie)

F Fricción (segmentos se deslizan o se adhieren al suelo)

Propiedades Físicas

Page 25: Framsticks Un Modelo 3D de Vida Artificial (Autores: M. Komosinski, S. Ulatowski)

Ejemplos de Morfologías

X(X,RRX(X,X))

XlCXlCXlCX

Page 26: Framsticks Un Modelo 3D de Vida Artificial (Autores: M. Komosinski, S. Ulatowski)

Otras Estructuras Posibles

Page 27: Framsticks Un Modelo 3D de Vida Artificial (Autores: M. Komosinski, S. Ulatowski)

Modificadores Propiedades Biológicas

AAsimilación = Fotosíntesis (un segmento vertical puede asimilar el doble que uno horizontal)

S Stamina (Aumenta la posibilidad de sobrivivir las peleas)

MFuerza muscular (músculos fuertes actúan con mayor fuerza, ganan mayor velocidad, pueden resistir mas, y usan más energía.)

IIngestion (habilidad de ganer energía de la comida: bolas de enrgía o cuerpos muertos)

EEnergía. La energía inicial de las criaturas puede ser mas alta o mas baja según se use 'E' o 'e'.

Page 28: Framsticks Un Modelo 3D de Vida Artificial (Autores: M. Komosinski, S. Ulatowski)

Controladores (Cerebro)

• Red Neural de cualquier topología. • Las neuronas se ubican en []’s luego de las X’s• Entradas de las neuronas pueden venir de distintas fuentes: receptores o salidas de otras neuronas. La entrada de una neurona puede ser valor costante

• Las neuronas controlan la rotación y torcedura del segmento al que pertencen

• Sintaxis: [control input : weight , input : weight , input...]control: @ (rotación) o | (torsion) o nada (omitted)input: Cualquier Número ó alguno de los siguientes inputs especiales de la neurona {* - valor constante value, Receptors: G ,T, S }

Page 29: Framsticks Un Modelo 3D de Vida Artificial (Autores: M. Komosinski, S. Ulatowski)

Ejemplos de Controladores

X[@-1:2,1:3]El segmento tiene una sola neurona, que controla su rotación (@). La neurona tiene dos entradas: una viene de la posición relativa -1 en el genotipo, la otra de la pos. relativa +1. La primera señal tiene peso 2, y la otra 3.

X[|*:1,G:2]Segmento con una sola neurona que controla su torsión. Tiene dos inputs: uno constantemente igual a 1, y el otro conectado a un giroscopio (ubicado en el segmento) con peso 2.

Un segmento puede tener varias neuronas - X[.....][.....][.....]

Page 30: Framsticks Un Modelo 3D de Vida Artificial (Autores: M. Komosinski, S. Ulatowski)

Ejemplo de Controladores•Neurona (1) afecta torsión y tiene un loop recursivo

•Neurona (2) afecta rotación, y recibe señales de las neuronas (1) y (3)

•Neurona (3) tiene un input: giroscopio (sentido del equili-brio del último segmento)