automata celular

Upload: yahira-ga

Post on 06-Mar-2016

212 views

Category:

Documents


0 download

DESCRIPTION

Modelado y descripción de un autómata celular con MATLAB

TRANSCRIPT

Universidad de GuanajuatoDivisin de Ciencias e IngenierasMariana Escobedo Torres, Yahira Gallardo Texas, Sofia Villanueva Gaona Reporte: Autmata celularModelado de Sistemas Biolgicos

Reporte 1. Autmata Celular, una celula en un espacio con barreras

ResumenUn autmata celular es un modelo matemtico para un sistema dinmico compuesto por un conjunto de celdas o clulas que adquieren distintos estados o valores. En ste proyecto se llev a cabo la generacin de un autmata cuyo movimiento es regido por funciones dentro del programa y dicho movimiento est limitado por barreras. Introduccin Los autmatas celulares (AC) surgieron en la dcada de 1940 por el cinetfico John Von Neumann, que intentaba modelar una maquina que fuera capaz de autoreplicarse, y fue as que lleg a un modelo matemtico de dicha maquina con reglas complicadas sobre una red rectangular. Inicialmente fueron interpretados como conjunto de clulas que crecan, se reproducan y moran a medida que pasaba el tiempo. Su nombre se debe a esta similitud con el crecimiento de las clulas.Un autmata celular adquiere distintos estados o valores los cuales son alterados de un instante a otro en unidades de tiempo discreto, es decir, que se puede cuantificar con valores enteros a intervalos regulares.El aspecto que mas caracteriza a los AC es su capacidad de lograr una serie de propiedades que surgen de la propia dinmica local a travs del paso del tiempo y no desde un inicio, aplicndose a todo el sistema en general. Por lo tanto no es fcil analizar las propiedades globales de un AC desde su comienzo, complejo por naturaleza, a no ser por va de la simulacin, partiendo de un estado o configuracin inicial de clulas y cambiando en cada instante los estados de todas ellas de forma sncrona. El aspecto que mas caracteriza a los AC es su capacidad de lograr una serie de propiedades que surgen de la propia dinmica local a travs del paso del tiempo y no desde un inicio, aplicndose a todo el sistema en general. Por lo tanto no es fcil analizar las propiedades globales de un AC desdesu comienzo, complejo por naturaleza, a no ser por va de la simulacin, partiendo de un estado o configuracin inicial de clulas y cambiando en cada instante los estados de todas ellas de forma sncrona.MetodologaEl programa realizado se program en Matlab de la siguiente manera:%limpia todo nuestro espacio de trabajo clear all close allclc %Aqui creamos la matriz principal con valores de 1M=ones(100,100); %filas, columnas, se crea una matriz de color blanco de 100 x 100 pixelesM(1:49,50:60)=0; %aqui colocamos las barreras con valores de 0M(61:100,50:60)=0; % Aqui realizamos los bordes en nuestro espacio donde se movera el automataM(1,1:100)=0;M(100,1:100)=0;M(1:100,1)=0;M(1:100,100)=0; M(52,2)=0.5; %coloca el automata en la columna 2 y en el renglon 52 figureimshow(M); [rows, cols]=size(M); col=2; while col0) rx=randi(99); ry=randi(99); if(M(rx,ry)==1) pr=pr-1; M(rx,ry)=0.3; else end imagesc(M); colormap spring pause(pausa);end%los depredadoreswhile (dr>0) rx=randi(99); ry=randi(99); if(M(rx,ry)==1) dr=dr-1; M(rx,ry)=0.5; else end imagesc(M); colormap hsv pause(pausa);end iter=0;g=zeros(1,prc);while (prc>0) rx=randi(99); ry=randi(99); mov=randi(4); iter=iter+1; if(M(rx,ry)==0.3) if mov==1 if((M(rx,ry+1)==0.3) || (M(rx,ry+1)==0)) g(iter)=prc; elseif (M(rx,ry+1)==0.5) M(rx,ry)=1; prc=prc-1; g(iter)=prc; imagesc(M); colormap hot pause(pausa); else M(rx,ry)=1; M(rx,ry+1)=0.3; g(iter)=prc; imagesc(M); colormap hot pause(pausa); end elseif mov==2 if((M(rx,ry-1)==0.3) || (M(rx,ry-1)==0)) g(iter)=prc; elseif (M(rx,ry-1)==0.5) M(rx,ry)=1; prc=prc-1; g(iter)=prc; imagesc(M); colormap hot pause(pausa); else M(rx,ry)=1; M(rx,ry-1)=0.3; g(iter)=prc; imagesc(M); colormap hot pause(pausa); end elseif mov==3 if((M(rx+1,ry)==0.3) || (M(rx+1,ry)==0)) g(iter)=prc; elseif (M(rx+1,ry)==0.5) M(rx,ry)=1; prc=prc-1; g(iter)=prc; imagesc(M); colormap hot pause(pausa); else M(rx,ry)=1; M(rx+1,ry)=0.3; g(iter)=prc; imagesc(M); colormap hot pause(pausa); end else % mov==4 if((M(rx-1,ry)==0.3) || (M(rx-1,ry)==0)) g(iter)=prc; elseif (M(rx-1,ry)==0.5) M(rx,ry)=1; prc=prc-1; g(iter)=prc; imagesc(M); colormap hot pause(pausa); else M(rx,ry)=1; M(rx-1,ry)=0.3; g(iter)=prc; imagesc(M); colormap hot pause(pausa); end end elseif (M(rx,ry)==0.5) if mov==1 if((M(rx,ry+1)==0.5) || (M(rx,ry+1)==0)) g(iter)=prc; elseif (M(rx,ry+1)==0.3) M(rx,ry)=1; M(rx,ry+1)=0.5; prc=prc-1; g(iter)=prc; imagesc(M); colormap hot pause(pausa); else M(rx,ry)=1; M(rx,ry+1)=0.5; g(iter)=prc; imagesc(M); colormap hot pause(pausa); end elseif mov==2 if((M(rx,ry-1)==0.5) || (M(rx,ry-1)==0)) g(iter)=prc; elseif (M(rx,ry-1)==0.3) M(rx,ry)=1; M(rx,ry-1)=0.5; prc=prc-1; g(iter)=prc; imagesc(M); colormap hot pause(pausa); else M(rx,ry)=1; M(rx,ry-1)=0.5; g(iter)=prc; imagesc(M); colormap hot pause(pausa); end elseif mov==3 if((M(rx+1,ry)==0.5) || (M(rx+1,ry)==0)) g(iter)=prc; elseif (M(rx+1,ry)==0.3) M(rx,ry)=1; M(rx+1,ry)=0.5; prc=prc-1; g(iter)=prc; imagesc(M); colormap hot pause(pausa); else M(rx,ry)=1; M(rx+1,ry)=0.5; g(iter)=prc; imagesc(M); colormap hot pause(pausa); end else % mov==4 if((M(rx-1,ry)==0.5) || (M(rx-1,ry)==0)) g(iter)=prc; elseif (M(rx-1,ry)==0.3) M(rx,ry)=1; M(rx-1,ry)=0.5; prc=prc-1; g(iter)=prc; imagesc(M); colormap hot pause(pausa); else M(rx,ry)=1; M(rx-1,ry)=0.5; g(iter)=prc; imagesc(M); colormap hot pause(pausa); end end else g(iter)=prc; endend figurestem(g);p=zeros(1,iter);for i=1:1:iter p(i)=i;end filename = 'depypre.xlsx';sheet = 1;xlRange = 'B1';xlRange2 = 'A1';xlswrite(filename,g',sheet,xlRange)xlswrite(filename,p',sheet,xlRange2)

ResultadosConclusinBibliografa