Computación Bio inspirada Tema VI: Modelos de Computación Celular con Membranas Mario de J Pérez Jiménez Grupo de Investigación en Computación Natural Dpto Ciencias de la Computación e Inteligencia Artificial Universidad de Sevilla marper@uses http://wwwcsuses/~marper/ Máster Universitario en Lógica, Computación e Inteligencia Artificial Curso 2016-2017
Índice del tema VI Las células de los organismos vivos Modelos de computación celular con membranas Sistemas P básicos de transición Sintaxis Semántica Ejemplo de un sistema P generador
La célula (I) Célula: unidad fundamental de todo organismo vivo Estructura compleja y, a la vez, muy organizada Permite ejecución simultánea de reacciones químicas Existen dos tipos de células: Procariotas: carecen de un núcleo bien definido (propias de los organismos unicelulares) Eucariotas: poseen un núcleo rodeado por una doble membrana (específicas de animales y plantas)
La célula (II) Las células realizan de manera similar unos procesos esenciales para la vida: Replicación del ADN Producción de energía Síntesis de proteínas Procesos metabólicos Partes de una célula eucariota Una especie de piel (membrana plásmica) El corazón de la célula (núcleo), que almacena el ADN El resto de la célula (citoplasma), que contiene: La mitocondria: se encarga de producir energía El aparato de Golgi: fábrica de proteínas El retículo endoplásmico, red de membranas interconectadas Los lisosomas: estómagos de las células
La célula (III)
Las membranas biológicas Involucradas en la mayoría de reacciones químicas Canales selectivos de comunicación (barreras semipermeables) Controlan un flujo de datos; es decir, de información: Premio Nobel de Química 2003: P Agre y R MacKinnon (canales proteínicos de las membranas)
Células versus máquinas En una célula viva Cada membrana trabaja con compuestos químicos de acuerdo con unas reacciones específicas En una máquina paralela Cada procesador trabaja con datos de acuerdo con un programa específico Célula Membranas Compuestos químicos Reacciones químicas Máquina Procesadores Datos Instrucciones
El paradigma de la computación celular con membranas Computación celular con Membranas: Gh Păun, 1998 2000 Modelo no determinista de tipo distribuido, paralelo y maximal El modelo básico: Sistema P básico de transición Ingredientes sintácticos: Un alfabeto, cuyos elementos se denominan objetos (y un subalfabeto de entrada) Una estructura de membranas (regiones): un árbol enraizado Un entorno pasivo (sólo recibe objetos) Unos multiconjuntos de objetos asociados a cada región Un conjunto de reglas de evolución asociado a cada membrana Dos membranas distinguidas: una de entrada y otra de salida Ingredientes semánticos: Configuración o descripción instantánea del sistema Aplicabilidad de las reglas a una configuración Transición de una configuración a otra Computación a partir de una configuración inicial
Sistema P básico de transición: Estructura de membranas Estructura de membranas de grado 8: membrana elemental piel entorno región entorno membrana Formalmente: un árbol enraizado
Sistema P básico de transición: Sintaxis Sistema P básico de transición de grado q, con q 1: en donde: Π = (Γ, Σ, µ, M 1,, M q, (R 1, ρ 1),, (R q, ρ q), i in, i out) Γ es un alfabeto (objetos) y Σ Γ µ es una estructura de membranas de grado q: membranas etiquetadas biyectivamente con elementos de {1,, q} (etiqueta del entorno: 0) Para cada i, 1 i q: M i es un multiconjunto finito sobre Γ \ Σ R i es un conjunto de reglas de evolución asociadas a la membrana i, del tipo u v, con v = (v 1, here)(v 2, out), (v 3, in j ) o v = (v 1, here)(v 2, out), (v 3, in j )δ, siendo u, v 1, v 2, v 3 multiconjuntos sobre Γ ρ i es un orden parcial estricto sobre R i i in {1,, q} representa la membrana de entrada del sistema e i out {0, 1,, q} representa la zona (el entorno o a una membrana) de salida del sistema
Sistema P básico de transición: Semántica Configuración inicial de Π: (µ, M 1,, M q) Configuración inicial de Π asociada a un multiconjunto m sobre Σ: (µ, M 1,, M iin + m, M q) Una configuración de Π en un instante t es una tupla (µ, M i 1,, M i k ): {i 1,, i k }debe contener la etiqueta asociada a la membrana piel µ es el subárbol de µ que se obtiene eliminando las membranas distintas de i 1,, i k M i 1,, M i k son multiconjuntos sobre Γ
Sistema P básico de transición: Semántica Aplicabilidad de una regla a una configuración C t en un instante t Condiciones necesarias para que una regla u v sea aplicable a una membrana i en una configuración C t: Si (v 1, in j ) v, entonces j debe ser hija de i en C t Si δ v, entonces i no es la membrana piel ni, en su caso, la membrana de salida No existe ninguna regla de R i que sea aplicable a C t y tenga mayor prioridad que u v (versión fuerte de la prioridad) Multiconjunto de reglas aplicables a una configuración Las reglas se ejecutan en paralelo, de forma maximal y no determinista
Sistema P básico de transición: Semántica Sean C = (µ, m i1,, m ik ), C = (µ, m j 1,, m j l ) configuraciones de Π: C se obtiene de C en un paso de transición (C Π C ), si se puede pasar de C a C aplicando las reglas de R i1,, R ik (de forma paralela y maximal) de acuerdo con el siguiente criterio: Si u v R is y el multiconjunto u aparece en la membrana de µ etiquetada por i s, entonces: El multiconjunto u se elimina de la membrana i s Si (v 1, here) v, se añade v 1 a la membrana i s Si (v 1, out) v, se añade v 1 a la membrana padre de i s (al entorno si i s es la piel) Si (v 1, in j ) v, se añade el v 1 a la membrana j (siempre que j sea un hijo de i s ) Si δ v, la membrana i s se disuelve y su contenido pasa al primer antecesor no disuelto (la piel no se puede disolver)
Ilustración de la regla de disolucion 1 1 2 3 4 5 6 3 8 5 6 7 8 Disolución 2,4,7 y 9 10 9 10 11 12 13 11 12 13
Sistema P básico de transición: Computación Una computación C es una sucesión (finita o infinita) de configuraciones C 0 Π C 1 Π Π C r, con r 0, tal que: C 0 es la configuración inicial de Π Para cada i < r, C i+1 se obtiene de C i por un paso de transición Una computación, C, es de parada si r N y en la configuración C r (denominada final o de parada) no hay reglas que se puedan aplicar El resultado de una computación de parada está codificado por el multiconjunto situado en la membrana de salida de la configuración final Un sistema P básico se puede considerar como: Una máquina generadora (Σ = ) Una máquina de cálculo (Σ ) Una máquina de decisión o reconocedora (yes, no Γ y Σ )
Ejemplo de un sistema P generador (I) Un sistema celular con membranas que genera el conjunto {n 2 : n 1} 1 2 3 a f 4 a a f a b b f f b b f f b b ( c, in ) 4 > f f a Membrana 4: membrana de salida Analizar las computaciones en función del instante m 0 en el que se aplica a b δ por primera vez
Ejemplo de un sistema P generador (II) Paso Membrana 1 Membrana 2 Membrana 3 Membrana 4 0 af 1 ab f 2 2 ab 2 f 22 3 ab 3 f 23 m ab m f 2m m + 1 b (m+1) f 2m+1 disuelta m + 2 b m+1 f 2m disuelta (m + 2) + 1 b m+1 f 2m 1 disuelta c m+1 (m + 2) + 2 b m+1 f 2m 2 disuelta c 2(m+1) (m + 2) + 3 b m+1 f 2m 3 disuelta c 3(m+1) (m + 2) + m b m+1 f 2m m disuelta c m(m+1) 2m + 3 ab m+1 disuelta disuelta c (m+1)(m+1)