ED2

download ED2

of 20

Transcript of ED2

INDICE

INTRODUCCION

CAPITULO 1INTRODUCCION A AUTOMATAS

Autmata Finito.3Autmata Finito no Determinista ......4Autmata de pila .........6

CAPITULO 2INTRODUCCION A LENGUAJES Y GRAMATICAS

1. Definicin de lenguajes........7 2. Definicin de gramtica........8

CAPITULO 3APLICACIONES DE LENGUAJES, GRAMATICAS Y AUTOMATAS

Construccin de compiladores...9Anlisis del lenguaje natural ......10Aplicaciones en Hardware ..12Autmatas Celulares 13Aplicaciones Biolgicas.15Crecimiento de cncer..15Crecimiento de poblacin con limitaciones de recursos..17

CONCLUSIONES

BIBLIOGRAFIA

INTRODUCCION

En el presente trabajo tratamos acerca de los autmatas, lenguajes y gramticas, as como las diferentes aplicaciones que tienen, de esa forma veremos lo importante que es para nuestra carrera este tema, y nos ayudara a entender mejor el funcionamiento de nuestro trabajo como ingenieros de sistemas.

Para comenzar como bien sabemos nosotros como seres humanos tenemos un lenguaje que nos permite comunicarnos entre nosotros mismos, que nos ayuda a entendernos cuando transmitimos nuestras ideas, y para poder transmitirlas se sigue un conjunto de reglas, para poder decir oraciones con sentido y significado.

Para poder comunicarnos entre nosotros utilizamos los diferentes lenguajes naturales que existen y para poder comunicarnos con las maquinas utilizamos lenguajes artificiales a travs de un conjunto de smbolos.

Entonces podemos decir que un lenguaje es un conjunto de palabras tambin llamadas cadenas o sentencias, que estn formadas por smbolos de un alfabeto. Una gramtica da cuenta de la estructura del lenguaje, es decir de las sentencias que lo forman, proporcionando las formas validas en que se puede combinar los smbolos del alfabeto.

Tambin debemos de mencionar que los lenguajes formales (lenguajes de programacin) obedecen a reglas preestablecidas y por tanto se ajustan a ellas, no evolucionan y han sido creados para un fin especfico. Sin embargo los lenguajes naturales usados por el hombre existen por s y las reglas gramaticales que rigen su estructura han sido desarrolladas con posterioridad para explicar esta ltima.Una maquina abstracta o autmata es un dispositivo terico capaz de recibir y transmitir informacin. Para realizar esta labor manipula cadenas de smbolos que se le presenta a la entrada produciendo otras tiras o cadenas de smbolos a su salida mediante un conjunto de estados que contienen la informacin necesarios para poder deducir, dado un smbolo de entrada, cul ser el smbolo de salida en cada momento.

Establecidas las reglas de una gramtica, una cadena de smbolos pertenecer al correspondiente lenguaje si tal cadena se ha formado obedeciendo esas reglas. A partir de una gramtica se puede construir una maquina reconocedora o aceptadora del lenguaje generado por esa gramtica, de tal forma que cuando reciba a su entrada una determinada cadena de smbolos indicara si dicha cadena pertenece o no al lenguaje. Una maquina reconoce a un lenguaje si es capaz de reconocer todas las sentencias pertenecientes al lenguaje y de no reconocer ninguna sentencia que no pertenezca a dicho lenguaje.

CAPITULO 1INTRODUCCION A AUTOMATAS

AUTMATA FINITO

Un autmata finito determinista es un modelo matemtico de una maquina secuencial que acepta cadenas de lenguajes definidos sobre un alfabeto A, la representacin de los autmatas finitos puede darse a cabo de dos maneras diferentes: mediante un diagrama de estados; o mediante una tabla de estados. De estas dos formas de representar, la ms acertada para una traduccin partiendo de unas especificaciones de diseo es el diagrama de estados. Sin embargo, el trabajo con los diagramas de estado no es fcil ni intuitivo. Entonces, para un posterior procesado utilizaremos la tabla de estados.

El modelo de maquina tiene una cantidad muy finita de memoria ejemplo: Dispositivos electrnicos.Para un autmata finito se define como una 5-upla M= {Q, , , e0, F} donde:

Q: conjunto finito de estados: alfabeto o conjunto finito de smbolos de entrada: funcin de transicin de estados, que se define como: Q x Q si el autmata es determinsticoe0: estado inicial; e0 QF: conjunto de estados finales o estados de aceptacin; F Q

Representaciones de un autmata finito * Diagrama de Transicin * Tabla de Transicin * Funcin de Transicin

Diagrama de TransicinEs un grafo dirigido que representa un autmata finito donde los vrtices representan los estados, cada vrtice esta etiquetado con un elemento de Q, estado de inicio es donde se empieza a ejecutarse el autmata se marca con una flecha y el estado de aceptacin marcada con un doble circulo.

Los arcos si (p,a)=q, se dibuja un arco con etiqueta a, desde el nodo p al nodo q. Las etiquetas en los arcos, indican que entradas pueden aparecer despus de que el diagrama ha llegado a un estado p.

Para representar un programa en el mecanismo de control usamos un diagrama de transicin sabemos que sus estados representan los estados de la mquina y cuyos arcos son una posible transicin de la mquina. Por lo tanto, los estados de inicio y aceptacin del diagrama corresponden a los estados de inicio y aceptacin del autmata.

Un diagrama para un autmata finito determinista aceptara si y solo si su estado inicial es tambin un estado de aceptacin. Los diagramas de transicin es determinista si cumple las siguientes condiciones: * Cada estado de estos diagramas solo debe tener un arco que sale para cada smbolo del alfabeto, de lo contrario, una mquina que llega a este estado podr hacer una eleccin de cual arco a seguir * Dicho programa debe estar completamente definido, es decir debe haber por lo menos un arco para cada smbolo del alfabeto; opuesto a lo anterior, una mquina que llega a este estado puede enfrentarse a una situacin donde no pueda aplicarse ninguna transicin.

Tabla de transicin

* Es una matriz representa un FA * Los estados se representan en las filas * El alfabeto se representa en columnas * Los arcos: Si (p,a)=q, la celda T[p,a]=q.

Estados | Entradas || 0 | 1 |. |S0 | S1 | S1 | |S1 | | | S2 |S2 | S2 | S2 | |

Estado inicial: S0Estado final: {S2}Funcin de Transicinpara 1,Bi =(Qi, ,i .q0 ,{q0}), ={0,1,2}i qj ,0=qj,i qj ,1=qk, donde k=j+1modulo ii qj ,2=qk, donde k=j+2modulo iPara un i dado, reconoce las cadenas donde la suma delos nmeros que formar la cadena es mltiplo de i.

AUTMATA FINITO NO DETERMINISTA

Un autmata finito no determinista es aquel que le corresponde para cada par de smbolos de estado y de entrada puede haber muchos estados siguientes posibles. Esto lo hace diferente de del autmata finito, donde esta nicamente resuelto el estado posible siguiente. Aunque ambas tengan definiciones distintas, puede ser demostrado en la teora formal que similares

De manera formal, un AFN se define como sigue, quntupla {Q, , , e0, F} donde:Q: conjunto finito de estados: alfabeto o conjunto finito de smbolos de entrada: funcin de transicin de estados, que se define como: Q x P(Q) si el autmata no determinstico P(Q) es el conjunto potencia de Q, es decir el conjunto de todos los subconjuntos de Q.e0: estado inicial; e0 QF: conjunto de estados finales o estados de aceptacin; F Q

Jerarqua de Chomsky en AutmatasLa complejidad de un autmata est determinada por sus capacidades de transicin, de su dispositivo de memoria y las capacidades de bsqueda en su memoria. De manera la jerarqua gramatical se traduce en una jerarqua equivalente mostrada en la tabla.

Tipo | Nombres |0 | Irrestricta |Maquina de Turing |1 | Irrestricta con memoria limitada | Maquina de Turing con cinta acotada |2 | Sensible al contexto | Maquina de Turing dominio total |3 | Sensible al contexto con borro | Maquina de Turing con espacio lineal |4 | Libre de contexto | Autmata de pila no determinista |5 | Libre de contexto determinista | Autmata de pila determinista |6 | Lineales | Autmatas lineales |7 | Regulares | Regulares |

Mquinas de Turing

Es un autmata finito con dos pilas que tienen un tope comn. O son similares, son autmatas que tienen una memoria dada por una cinta la cual es un almacenamiento lineal, con acceso a cualquier localidad en ella. El tope comn es la casilla laida, una pila pertenece a una cinta derecha de la casilla leda y otra pila es su parte izquierda.

Las transiciones de la mquina quedan determinadas por una funcin definida por T:QTQTMov , donde Mov={Der,Izq}. Esta vez, la relacintq,a=(p,b,) Se interpreta como sigue: si est en el estado q y se lee el smbolo a entonces se escribe b, se pasa a p y se va a examinar la casilla al lado de la leda De hecho la relacin tq,a=(p,b,) puede escribirse como t(q,a;p,b,) , por esto decimos que mquina de Turing queda especificada por su lista de quntuplas.

Ejemplo: cadenas equilibradas de parntesisPara obtener una cadena equilibrada, cada ) en ella ha de empatar con un correspondiente (que este adelante. Para aceptar cadenas equilibradas procederemos como sigue: * Cada (ya empatado se marcara como ya revisado por una A y cada ) se marcara con una B. * Inicialmente se busca hacia la izquierda la primer (que va de izquierda a derecha. * Por cada ), * Se marca con B * Se busca hacia la izquierda el primer (que lo empate * Si no se encontrare tal (la cadena esta desequilibrada. Por otro caso, el (se marca con A y se repite el ciclo. * Si habra (no empatados, la cadena esta desequilibrada. En otro caso se tiene equilibrio y se concluye el proceso.El procedimiento queda mostrado en quntuplas.

Mquina de Turing que reconoce cadenas equilibradas de parntesis

1,x;1,x,Der | con cualquier cosa, salvo ), avncese a la derecha ,x{(,b,A,B} |1,);2,B,Izq | con el primer ), mrquese y retrocdase |1,b;3,b,Izq | si la lista se acaba, revsese que todo haya sido marcado, |2,y;2,y,Izq | con cualquier cosa, salvo ``('', continese el retroceso, y{),b,A,B} |2,(;1,A,Der | mrquese el ( que empata y reptase el ciclo |2,b;4,No,Alt | Se termina la cadena y no existe el correspondiente (. No hay equilibrio |3,x;3,x,Izq | retrocdase ignorando las marcas ,x{A;B} |3,b;3,No,Alt | Si quedare un (', ste ya no podra empatarse. No hay equilibrio. |3,b;3,s,Alt | Se agot la cadena y todo se marc. S hay equilibrio. |

Los cuatro estados de la mquina tienen una interpretacin siguiente: * 1: avanza a la derecha buscando ) * 2: retrocede a la izquierda buscando ( * 3: revisa que todo haya sido marcado * 4: estado terminal.

Mostramos la computacin correspondiente a una cadena dada. En cada instante, la casilla leda es la adyacente a la derecha del estado actual la cual est de negrita.

()(())1()(())(1)(())2(B())A1B(())AB1(())AB (1 ())AB ((1))AB (2(B)) | AB(A1B)AB(AB1)AB(A2BBAB(2ABBAB2 (ABBABA1ABBABAA1BBABAAB1BABAABB1b | ABAAB3BABAA3BBABA3ABBAB3AABBA3BAABB3ABAABB3bABAABB[s]ABAABB |

AUTMATA DE PILA

Estos autmatas finitos poseen un dispositivo de memoria muy elemental, del tipo pila, el cual es un almacenamiento lineal que funciona bajo el principio PEUS Primero en Entrar, ltimo en Salir. Sea Q un conjunto de estados, sea T el alfabeto de entrada y sea V un alfabeto de pila. La funcin de transicin es de la forma t:QTVQV*, donde la relacintq,a,v=(p,v) se interpreta de esta manera: Si est en el estado q, arriba el smbolo a y en el tope de la pila est el smbolo b entonces se pasa al estado p y se empila la palabra v . Un autmata de pila reconoce a una palabra si, tras haberla ledo, termina con su pila vaca.

Ejemplo: las cadenas equilibradas de parntesis son reconocidas por un autmata de plia determinista tengamos en cuenta esto * () es una cadena equilibrada de parntesis, (CEP). * Si es una CEP entonces es una CEP * La concatenacin de dos CEP's es una CEP.

Para representar a un autmata que reconozca CEP's, se dice que el parntesis que abre (con el smbolo a, al parntesis que cierra ) con c, y con b al ``blanco'', es decir, al fin de la cadena de entrada.

Consideremos el autmata de pila cuyas componentes son las siguientes:

Q=Seguir ,xito ,Fracaso:estadosT=a ,b ,c :smbolos de entradaV=A,C :smbolo de pilaq0 =Seguir :smbolo inicial

Cuya funcin de transicin es:

t:Seguir,a,ySeguir,Ay empila parntesis que abrent:Seguir,c,ASeguir,nil suprime parntesis empatadost:Seguir,c,nilFracaso,C no hay equilibriot:Seguir,b,AFracaso,A no hay equilibriot:Seguir,b,nilExito,nil equilibrio verificado

Diagramas de estadoEn los diagramas de estado podemos ver dos elementos: estados y transiciones.

Los estados son las letras o smbolos enmarcados (dentro de un crculo generalmente). En cambio, las transiciones son arcos dirigidos que llevan asociadas una/s etiquetas.

Los estados se pueden definir como las posibles situaciones o resultados a las que puede llegar el autmata. Dentro de estos estados podemos distinguir entre estados estables y estados inestables. Cuando existe alguna transicin para la cual se llega al mismo estado desde el que se parte o inicia, se dice que es un estado estable. Mientras que si no existe ninguna transicin que cumpla la condicin anterior, entonces se dice que es un estado inestable. Un ejemplo en el caso de la mquina de ventas de refresco, los posibles estados pueden ser:

Hay el dinero suficiente para sacar un refresco. No existe dinero en el interior de la mquina.

En el interior de la mquina estn cada una de las cantidades permitidas. Por ejemplo: si slo se admiten monedas de 10, 20 y 50 centavos, el refresco cuesta 60 centavos. y no se devuelve el dinero, las cantidades pueden ser 10,20,30,40,50 y 60 centavos.

Las transiciones correspondern a los sucesos en las entradas que producirn los cambios de estado en el sentido de la flecha del arco. El cambio de estado se producir si la condicin de entrada coincide con la etiqueta asociada a dicha transicin. De nuevo en el ejemplo que vimos las posibles condiciones de entrada podran ser:

Introducir las diferentes monedas permitidas: 10, 20 y 50 c. Pulsar el botn para obtener el refresco.

CAPITULO 2

INTRODUCCION A LENGUAJES Y GRAMATICAS

DEFINICION DE LENGUAJESSe puede pensar un lenguaje como una especificacin completa, al menos en principio de tres cosas. En primer lugar debe existir un conjunto S con todas las palabras que se consideran parte del lenguaje. En segundo lugar hay que designar un subconjunto S* como conjunto de las oraciones con construccin adecuada y por ltimo hay que determinar cules de las oraciones con construccin adecuada tienen significado y cual es este.

Podemos decir que para un alfabeto dado , cualquier subconjunto * es un lenguaje sobre , esto incluye al sub lenguaje vaco .

Ya que los lenguajes son conjuntos podemos formar la unin, interseccin y diferencia simtrica de dos lenguajes.

Un lenguaje est compuesto por sintaxis (gramtica), que define las secuencias de smbolos que forman cadenas validas de un lenguaje. Y por semntica, que es el significado de las cadenas que componen un lenguaje.

DEFINICION DE GRAMATICALa definicin de las gramticas formales como sistemas generativos se debe a Noam Chomsky, que las introdujo como instrumentos para modernizar la estructura gramatical de las lenguas. Chomsky la define como la descripcin formalizada de las oraciones de un lenguaje. Una gramtica genera o describe un lenguaje, es decir especifica de una manera finita el conjunto de cadenas de smbolos que constituyen un lenguaje.

En la definicin formal de una gramtica podemos ver que es una cudrupla:G = (VT, VN, S, P)Donde:VT: conjunto finito de smbolos terminalesVN: conjunto finito de smbolos no terminales.S es el smbolo inicial y pertenece a VNP conjunto de producciones o de reglas de derivacin.

Todas las cadenas del lenguaje definidas por la gramtica estn formadas con smbolos del vocabulario terminal VT. El vocabulario terminal se define por enumeracin de los smbolos terminales.

El vocabulario no terminal VN es el conjunto de smbolos introducidos como elementos auxiliare para la definicin de la gramtica y que no figuran en las sentencias del lenguaje. El vocabulario no terminal se define por enumeracin de los smbolos no terminales.

La interseccin entre el vocabulario terminal y no terminal es el conjunto vaco.La unin entre el vocabulario terminal y no terminal es el vocabulario.El smbolo inicial S es un smbolo no terminal a partir del cual se aplican las reglas de la gramtica para obtener las distintas cadenas del lenguaje.

Las producciones P son las reglas que se aplican desde el smbolo inicial para obtener las cadenas del lenguaje. El conjunto de producciones P se define por medio de la enumeracin de las distintas producciones, en forma de las reglas o por medio de un metalenguaje por ejemplo BNF (Backus Naur Form) o EBNF (Extended Backus Naur Form).

Las gramticas permiten describir de forma intencional a los lenguajes; se describirn los lenguajes mediante los 4 elementos ya antes mencionados, y cabe resaltar que al smbolo inicial tambin se le llama axioma.

Jerarqua de gramticasChomsky defini 4 tipos distintos de gramticas en funcin de la forma de derivacin P. La clasificacin comienza con un tipo de gramticas que pretende ser universal, aplicando restricciones a sus reglas de derivacin se vas obteniendo los otros tres tipos de gramticas.

Gramticas de tipo 0: Tambin llamadas gramticas no restringidas o gramticas con estructura de frase. Es una gramtica sin restricciones que incluye a todas las gramticas formales.

Gramticas de tipo 1: Tambin llamadas gramticas sensibles al contexto.

Gramticas de tipo 2: tambin denominadas gramticas libres de contexto. Sus reglas de produccin tan solo admiten tener un smbolo no terminal en su parte izquierda.

Gramticas de tipo 3: tambin se denominan gramticas regulares o gramticas lineales a la derecha comienzan sus reglas de produccin con un smbolo terminal, que puede ser seguido o no por un smbolo no terminal.

CAPITULO 3

APLICACIONES DE LENGUAJES, GRAMATICAS Y AUTOMATAS

Aqu estudiaremos algunas de las aplicaciones de la teora de lenguajes, gramticas y autmatas a la resolucin de problemas desde un punto de vista informtico.

CONSTRUCION DE COMPILADORES

La construccin de compiladores de lenguajes de programacin se suele realizar utilizando tanto autmatas a pila como autmatas finitos. Las fases y etapas ms usuales que conforman un compilador son:

- AnlisisEsta fase realiza una comprobacin de si el programa fuente, cumple con las reglas de la gramtica del lenguaje de programacin. Normalmente se divide en tres etapas:

* Anlisis lxico: lee el fichero fuente e identifica cuales son los elementos bsicos del anlisis, denominados tokens, como por ejemplo, los identificadores, los smbolos de puntuacin, las palabras reservadas, los nmeros, etc. Esta etapa se suele realizar por medio de un Autmata finito, ya que el lenguaje que describe a los elementos bsicos se puede reducir a un lenguaje regular.

* Anlisis sintctico: toma como entrada los tokens y comprueba que la secuencia completa de todos los tokens como palabra forma parte del lenguaje de la gramtica que describe al lenguaje de programacin. A tales efectos, a los tokens se les considera los smbolos terminales de la gramtica, y a la secuencia de tokens la palabra de entrada. Este tipo de anlisis se realiza por medio de Autmatas a pila, debido a que la gramtica suele ser de contexto libre.

* Anlisis semntico: se encarga de comprobar que el programa fuente, adems de cumplir con las reglas sintcticas de la gramtica, tambin cumple las reglas semnticas. Por ejemplo, si una variable ya ha sido declarada cuando se utiliza, o si en una operacin numrica todos los operandos son de tipo numrico.

Debido a que este tipo de anlisis necesita tener en cuenta al contexto, no es posible realizar el anlisis con gramticas de tipo 2 3, por lo que hay que utilizar gramticas menos restrictivas.

- Generacin de cdigoUna vez que el anlisis ha sido correcto, los compiladores deben generar cdigo en el lenguaje destino. Para ello se recurre a las estructuras generadas durante la fase de anlisis, como, por ejemplo, los arboles de derivacin, para generar el cdigo.ANALISIS DE LENGUAJE NATURAL

La tecnologa de los autmatas finitos se aplica con xito en la resolucin de algunas tareas de un sistema de procesamiento de lenguaje natural. Una de estas tareas es la desambiguaran morfolgica consistente en averiguar cul es la categora gramatical (nombre, verbo, adjetivo, etc.) de una palabra en una oracin.Una misma palabra puede tener carias categoras gramaticales y por ello es necesario un proceso de desambiguaran el cual puede llevarse a cabo utilizando reglas sintcticas, semnticas, o conocimiento estadstico. Ejemplos en castellano de palabras ambiguas son: como (verbo y adverbio), vino (verbo y nombre), sobre (nombre y preposicin), ante (nombre y preposicin), viaje (verbo y nombre). A continuacin se estudiara de manera muy simplificada cmo es posible resolver este problema utilizando autmatas finitos probabilsticos.

Supngase el siguiente conjunto de categoras gramaticales: determinante, nombre, verbo, pronombre y preposicin. La siguiente tabla muestra las probabilidades de transicin entre estas categoras, es decir, las probabilidades de que las categoras sigan a otra en la oracin.

| Determinante | nombre | verbo | pronombre | Preposicin |Determinante | 0.1 | 0.6 | 0.1 | 0.1 | 0.1 |Nombre | 0.1 | 0.1 | 0.4 | 0.1 | 0.3 |Verbo | 0.3 | 0.2 | 0.1 | 0.1 | 0.3 |Pronombre | 0.1 | 0.1 | 0.4 | 0.1 | 0.3 |Preposicin | 0.2 | 0.3 | 0.2 | 0.2 | 0.1 |

Por ejemplo, la probabilidad de que, dada la categora determinante, la siguiente categora en la oracin sea un nombre es:

P (nombre | determinante)=0.6

Estas probabilidades definen un modelo de Markov equivalente a un autmata finito probabilstico no determinista, donde los estados del autmata estn representados por las categoras gramaticales.Tambin son necesarias las probabilidades de que las palabras tengan una determinada categora. Por ejemplo, la palabra pregunta puede ser nombre o verbo y sus probabilidades extradas de textos previamente analizados son:

P (pregunta |nombre) = 0.4

P (pregunta |verbo) = 0.6

Del mismo modo se requiere tambin la probabilidad de que una determinada categora sea el comienzo de una oracin. Por ejemplo, la probabilidad de que la oracin este encabezada por un determinante es P (determinante) = 0.4.

La siguiente formula es una aproximacin del teorema de Bayes que combina la informacin contextual de las categoras gramaticales (transicin entre categoras) y la frecuencia de aparicin de las palabras con determinadas categoras. Si se tiene en la entrada una oracin =P1 P2 P3.Pn, formada por las palabras Pi, se puede definir la probabilidad de encontrarse ante la secuencia de categoras gramaticales dad esa oracin de entrada como:

Pe = [P () e1i=2nP (ei|ei-1)] [i=1nP (PI|ei)]

Donde E es la secuencia de categoras gramaticales que representa a la oracin, e1son las categoras gramaticales, y n es el nmero de palabras de la oracin. Para resolver el problema, hay que buscar la secuencia de categoras que maximice la formula anterior. Este proceso se puede resolver utilizando un esquema de programacin dinmica.

A continuacin se ver el proceso de desambiguacin para la oracin: el profesor pregunta a una alumna, dadas las probabilidades de transicin de la tabla anterior as como las siguientes probabilidades:

P(el |determinante) = 1P(profesor |nombre) = 1P(pregunta |nombre) = 0.4P(pregunta |verbo) = 0.6P(a |preposicin) = 1P(una |determinante) = 0.6P(una |pronombre) = 0.4P(alumna |nombre) = 1

P(determinante) = 0.3P(nombre) = 0.2P(verbo) = 0.1P(preposicin) = 0.2P(pronombre) = 0.2

La asignacin de categoras a las palabras de la oracin es:

El | Profesor | pregunta | A | Una | Alumna |determinante | nombre | Nombre verbo | preposicin | Determinante pronombre | Nombre |

Debido a que las palabras pregunta y una son ambiguas, existen cuatro posibles combinaciones de etiquetas. La secuencia ms probable de etiquetas para esta oracin ser la que maximice la formula anterior.

* Primera posibilidad.- Determinante nombre nombre preposicin determinante nombre.P(E|P) = P(determinante) X P(el |determinante) X P(nombre| determinante) X P(profesor |nombre) X P(nombre| nombre) X P(pregunta |nombre) X P(preposicin | nombre) X P(a |preposicin) X P(determinante | preposicin) X P(una |determinante) X P(nombre| determinante) X P(alumna |nombre) = 0.3 * 1 * 0.5 * 1 * 0.1 * 0.4 * 0.3 * 1 * 0.3 * 0.6 * 0.5 * 1 = 0.000162

* Segunda posibilidad.- Determinante nombre verbo preposicin determinante nombre.P(E|P) = P(determinante) X P(el |determinante) X P(nombre| determinante) X P(profesor |nombre) X P(verbo| nombre) X P(pregunta |verbo) X P(preposicin |verbo) X P(a |preposicin) X P(determinante | preposicin) X P(una |determinante) X P(nombre| determinante) X P(alumna |nombre) = 0.3 * 1 * 0.5 * 1 * 0.4 * 0.6 * 0.3 * 1 * 0.3 * 0.6 * 0.5 * 1 = 0.000972

* Tercera Posibilidad.- Determinante nombre nombre preposicin pronombre nombre.P(E|P) = P(determinante) X P(el |determinante) X P(nombre| determinante) X P(profesor |nombre) X P(nombre| nombre) X P(pregunta |nombre) X P(preposicin |nombre) X P(a |preposicin) X P(pronombre | preposicin) X P(una |pronombre) X P(nombre pronombre) X P(alumna |nombre) = 0.3 * 1 * 0.5 * 1 * 0.1 * 0.4 * 0.3 * 1 * 0.2 * 0.4 * 0.1 * 1 = 0.0000144

* Cuarta posibilidad.- Determinante nombre verbo preposicin pronombre nombre.P(E|P) = P(determinante) X P(el |determinante) X P(nombre| determinante) X P(profesor |nombre) X P(verbo| nombre) X P(pregunta |verbo) X P(preposicin |verbo) X P(a |preposicin) X P(pronombre | preposicin) X P(una |pronombre) X P(nombre| pronombre) X P(alumna |nombre) = 0.3 * 1 * 0.5 * 1 * 0.4 * 0.6 * 0.3 * 1 * 0.2 * 0.4 * 0.1 * 1 = 0.0000864

De las cuatro posibilidades, es la segunda la que tiene la probabilidad mayor (0.00972) luego esa es la combinacin de etiquetas que se asigna a la oracin.

Otra de las aplicaciones ms interesantes de los autmatas finitos al tratamiento automtico del lenguaje la constituyen los analizadores sintcticos parciales utilizados en la extraccin de informacin a partir de grandes volmenes de textos. Su importancia estriba en el hecho de que, en muchos casos, es suficiente detectar determinados segmentos ene l texto para localizar informacin prometedora.

APLICACIONES DE HARDWARE

En un circuito digital, una MEF puede ser construida utilizando un dispositivo lgico programable. Un controlador lgico programable, puertas lgicas y flip- flops, ms especficamente, la implementacin de hardware requiere un registrador para almacenar el estado de las variables, un bloque de lgica combinacional que determina el estado de transicin y un segundo bloque de lgica combinacional que determina la salida de la mef.

En la actualidad existen 2 autmatas los compactos y modulares:

- Los compactosSe les llama tambin en el mercado nano autmatas. Estos son autmatas potentes a nivel de programacin y con comunicaciones de equipos externos con los equipos externos. Estos estn pensados para aplicaciones pequeas pero no nos olvidemos que utilizan clculos matemticos muy bsicos, hasta calendario real con las pasibilidades de activar variables que estn en funcin del tiempo (durante un determinado espacio de tiempo desde segundos hasta aos). La memoria de trabajo, RAM, dispone de otra memoria la cual permite asegurar el programa por tiempo ilimitado.

Principales caractersticas: * Memorias de 1k, 1000 instrucciones * Temporizadores 31, 16 des/contadores, programadores cclicos. * Control analgico de va externa * Reloj y calendario * En programacin, lista de las instrucciones, contactos, etc. * Proteccin de los programas * Conversiones de BCD en binario o de binario a BCD * Permite saltos de programas condicionados * Permite operaciones matemticas bsicas como el exponencial las multiplicacin, raz cuadrada, etc. * La posibilidad de entrada o salida automtica analgicamente las variables numricas de 16 bits, la principal caracterstica es en el precio ya que cada vez es ms bajo en el mercado.

- ModularesSon aquellos que permiten una ampliacin en sus posibilidades, asea se amplan con los diferentes mdulos segn se necesiten.

En estos mdulos suelen ser de entradas digitales o analgicas. * Salidas de idem * Comunicaciones * Rpido contaje * La regulacin * Las funciones especiales * Los ejes * El pasaje

El autmata tiene un chasis inicial que es el principal, en los cuales se encuentran los diferentes mdulos, que son limitados, sobretodo en nmeros, que estn en funcin a las caractersticas del CPU. Dentro de una gama de puede que exista muchos chasis, CPU, mdulos, fuentes de alimentacin todos estn sujetos fsicamente al rack, y lgicamente tambin est sujeto al BUS de generacin que se genera entre ambos, hoy en da prcticamente todos los autmatas utilizan los BUS en serie la cual permite una distancia mucho mayor en entre los rack existen fuentes de alimentacin los cuales tiene varios calibres elctricos, existen CPU ms o menos potentes, con menos o ms memorias, este permite que se dispongan de autmatas prcticamente a la medida.

AUTOMATAS CELULARES (AC)

Son muchos los ejemplos en la naturaleza de comportamientos complejos que surgen a partir de componentes e interacciones simples. Si se da una descripcin adecuada y completa a dichos componentes, es posible construir un mundo artificial donde interacten organismos artificiales y cumplan los mismos principios que los sistemas naturales reales. Ms an, si existen leyes biolgicas universales, entonces en el mundo artificial deberan surgir los mismos comportamientos que en el mundo natural de forma espontnea y por tanto ser un mundo natural en s mismo.

Los autmatas celulares representan el eslabn perdido entre el mundo computable y la construccin de teoras contundentes. Si una ley es universal, debera en principio haber un mecanismo artificial que al aplicarla resulte en una situacin exacta de la realidad.

Los autmatas celulares son un ambiente artificial donde se pueden modelar procesos de ciencias factuales como la fsica y la biologa o de ciencias formales como las matemticas y la lgica. La generalidad de los autmatas celulares y su versatilidad para construir mundos en un espacio y tiempo determinados, podran ser una respuesta para la construccin de teoras slidas.

Origen de los autmatas celularesPor 1940, Jhon von Neumann, estaba interesado en una teora general de autmatas para el procedimiento de informacin que fuera aplicable tanto a sistemas biolgicos, como a aparatos tecnolgicos. Gracias a esta idea von Neumann sugiri extender la teora lgica de autmatas a una teora probabilsticas basado en el trabajo de Claude Shannon, sobre la teora de la comunicacin; y de Norbert Wienner de la mecnica estadstica de la ciberntica.

El objetivo de esta teora extendida era explorar la complejidad de los sistemas biolgicos y tecnolgicos en el proceso de informacin, y la mecnica por lo cual estos sistemas complejos pueden funcionar utilizando componentes poco confiables. Estos estudios de complejidad lo llevaron a investigar los mecanismos por los cuales los organismos se auto- replican e intento construir autmatas tericos que tuvieran esta capacidad, lo que lo llevo a la nocin de autmatas celulares.

Von Neumann en su trabajo de 1948 titulado La teora general y lgica de autmatas hace su primer intento de establecer las bases para crear organismos artificiales capaces de auto-replicacin. Von Neumann comienza su disertacin, estableciendo:

a. Los organismos vivos estn construidos de partes en cierta forma independientes y por ello es necesario entender la estructura y funcionamiento de tales partes individuales.b. El entendimiento del todo consiste en entender como estos elementos individuales estn organizados, y como el funcionamiento del todo es expresable en trminos de sus partes.

Descripcin formal del lenguaje de autmatas celulares FORTH (ACF)Para construir un ambiente que permita especificar AC son necesarios dos elementos importantes: * Un espacio celular de propsito general, donde se puedan ejecutar las reglas de un AC. * Un lenguaje con el cual se pueda definir dichas reglas.

ACF provee un ambiente para la programacin de AC con un lenguaje simple, basada en FORTH. FORTH es un lenguaje de programacin que se utiliza en procesos de control. Este lenguaje fue diseado para facilitar la comunicacin entre las mquinas y seres humanos, utilizando un lenguaje orientado al manejo de mquinas. Este lenguaje tiene caractersticas de lenguaje de alto nivel como PASCAL y BASIC, pero permite una estrecha relacin al bajo nivel con la mquina. Esta caracterstica hace de que un lenguaje ideal para la programacin de reglas en un AC dado que en el cambio de estado en cada celda del AC es procesado por un autmata de estado finito que es una mquina que procesa la informacin del vecindario y genera una salida siguiendo instrucciones, la estructura sintctica de FORTH, permite desarrollar instrucciones para ser procesadas por esta mquina de forma simple y directa. ACF utiliza varios aspectos de FORTH e incorpora algunas funciones especiales de AC que facilitan la programacin de reglas tanto deterministas como probabilsticas.

Mediante el lenguaje ACF se especifican el vecindario y las reglas que operan sobre los estados de cada celda en un AC. Cuando ACF procesa el lenguaje, construyendo una tabla de transiciones, incorporando todos los posibles resultados que se generan a partir de las configuraciones del vecindario declarado. Una vez construida esta tabla, el espacio celular verifica en forma secuencial, para cada celda, el vecindario y busca en la tabla de transiciones cual debe ser el nuevo estado. Esto quiere decir que la regla queda implcita en la tabla de transiciones.

El autmata celular de ACFDado que ACF es un lenguaje orientado a AC, las reglas especificadas en el lenguaje determinan el comportamiento de un espacio celular. De esta forma existen una integracin del mecanismo de construccin de reglas de AC y el ambiente donde evoluciona el AC.

La estructura del AC en ACF, est basada en las especificaciones del CAM. CAM es una tarjeta que permite la simulacin de AC a travs del lenguaje FORTH. ACF toma de base el funcionamiento de CAM, pero implementado de forma completa como software para correr en ambiente Windows. Adems ACF incorpora las estructuras necesarias para construir AC probabilsticos.

Autmatas celulares - FORTH para Windows (ACFw)A partir de la descripcin semntica y sintctica de Autmatas celular - FORTH, del lenguaje Autmatas celular - FORTH y una interfaz que permite modelar Autmatas celular. Esta implantacin se denomina Autmatas celular - FORTH para Windows. Autmatas celular - FORTH para Windows es un programa para Windows, que permite la construccin de Autmatas celular - FORTH mediante el lenguaje Autmatas celular - FORTH. Este ambiente de Autmatas celular permite realizar varias funciones para el diseo y anlisis de Autmatas celular, algunos de cuales son:

* Programacin de Ac determinsticos de 1 2 dimensiones. * Evolucin visual de AC. * Establecer diferentes configuraciones iniciales para AC. * Grabar resultados de AC. * Utilizar graficas como configuracin inicial del AC. * Aplicar mtodos estadsticos para analizar la evolucin de AC.

APLICACIONES BIOLOGICAS

Los autmatas celulares han aparecido espordicamente como versiones simplificadas de diferentes situaciones biolgicas comunes. La mayora de los modelos son abstracciones de ecuaciones parciales que modelan la dinmica en espacio y tiempo, de un fenmeno determinado.

Hay que destacar que muchas de las aplicaciones de autmatas celulares a fenmenos biolgicos guardan estrecha correspondencia con modelos de ecuaciones diferenciales, con la ventana de que la interaccin local y el estado de cada individuo es considerado. Un ejemplo de una aplicacin interesante de autmatas celulares a ecologa lo representa el autmatas celulares llamado WATOR; es un mundo que trata de imitar la interaccin predador presa.

Para ello utiliza dos tipos de celdas: tiburones y peces. Este modelo utiliza variables como edad y hambre para establecer la dinmica ecolgica. Y adems muestra una correspondencia entre las soluciones del sistema de ecuaciones de Lotka- Volterra para modelar la interaccin de dos espacios. Otro ejemplo de aplicaciones ecolgicas, es los autmatas celulares que modela la interaccin parasitoide- hospedero.En estos modelos se incorpora el cambio en el estado infeccioso del hospedero y el movimiento de frentes infecciosos en una poblacin hospedera.

El trabajo de Nijhout, es un autmata celular que permite la morfognesis siguiendo especificaciones de concentracin de morfaremos y de vecindario, que guardan estrecha relacin con el proceso de desarrollo de una mosca a partir del cigoto. Inclusive en este autmata celular se describe todo el rbol filogentico de individuos creados a partir de mutaciones simples.

CRECIMIENTO DEL CANCER

* AntecedentesEl estudio in vivo del crecimiento de clulas cancerosas presenta varias limitaciones tcnicas y no refleja la situacin real de su desarrollo en seres vivos. En estudios de crecimiento de tumores cancerosos, se ha demostrado que la dinmica est gobernado por interacciones locales como: proliferacin de clulas cancerosas (divisin o invasin), la presencia de nutrientes, la accin del sistema inmune contra el cncer, el escape o disolucin de clulas cancerosa muerta, la presin mecnica en el interior del tumor, etc.Este ejemplo muestra como los resultados del autmata celular tiene estrecha relacin con ecuaciones diferenciales de Gompertz que describe el crecimiento del cncer en trminos macroscpicos. Aqu nos interesa la construccin de autmata y alguno aspecto generales del resultado

* Reglas del autmata celularEl AC utiliza 8 estados con 5 vecinos en un arreglo de 200x200. los estados son: (0) clula normal, (1) clula cancerosa,(2 o 6) complejo producido por la citotoxina,(3) clulas cancerosa muerta, (4) citotoxina, (5) cncer + citotoxina y (7) clula cancerosa muerta + citotoxina.

Las reglas de transicin son las siguientes:

1. 01 con probabilidad k1, si tines una o ms celdas 1 a su alrededor. Esta es la reproduccin de clulas cancerosas.

2. 52 con probabilidad k2, esto quiere decir que una celula cancerosas en presencia de una citotoxina, forma un complemento.

3. 27 con probabilidad k3, un complejo resulta en la muerte de la celula cancerosa y que la citotoxina vuelva a su estado normal.

4. 74, con probabilidad k4, si una clula cancerosa muerta se disuelve, quedando nuevamente la clula normal junto a la citotoxina. Esta operacin representa la infiltracin de tejido normal en tejido canceroso.

El programa en ACF se construye utilizando 3 planos para lograr 8 estados. El plano 2 indica la presencia de citotoxina.

* ResultadosLa simulacin de clulas cancerosas, despus de 200 generaciones, la citotoxina evita que la propagacion de clulas cancerosas forme un tejido continuo, quedando un tejido menos denso y ramificado. Si se deja evolucionar el autmata celular suficiente (1000 generaciones), las clulas cancerosas habrn ocupado todo el espacio celular, sin embargo, en el donde hay citotoxina, las clulas cancerosas entrar en una dinmica donde la cantidad de clulas cancerosas fluctua alrededor de un mximo, incluso en nmeros que clulas normales.

La entropa en el caso de crecimiento sin citotoxina muestra un comportamiento interesante. Al aumentar el tamao del cancer, comienza un aumento de entropa dado a que se irrumpe el orden de un tejido continuo de clulas normales. Al llegar a un punto de entropa mximo, la cantidad de clulas cancerosas ha ocupado un 50% del espacio. Luego al aumentar la cantidad de clulas cancerosas la entropa disminuye nuevamente dado que el espacio se va trasformando en solo clulas cancerosas.

a) No hay citotoxinas, (c) clulas cancerosas, (N) clulas normales b) Hay citotoxinas, (c) clulas cancerosas, (N) clulas normales

Las clulas cancerosas no son afectadas por citotoxinas y su crecimiento genera un tejido continuo, S=0.11, entropa especial (S) del crecimiento de clulas cancerosas despus de 1000 generaciones.

Las clulas normales tienen citotoxinas que induce la muerte de clulas cancerosas generando mayor desorden, S = 0.23, entropa especial (S) del crecimiento de clulas cancerosas despus de 1000 generaciones.

* ImplicacionesLas curvas de crecimiento generados por modelos de AC coinciden con las curvas. El objetivo fundamental de este tipo de modelos es una interpretacin funcional de patones biolgicos. En la patologa una evaluacin del patrn del tumor (o silueta del tumor) provee criterios importantes para el diagnstico y prognosis de sistemas cancerosas.

En algunas limitaciones en la simplificacin de estos sistemas y en la limitacin de 2 dimensiones. Sin embargo los estudios con AC sirven para determinar como la dinmica local (si est bien construida una regla) genera las propiedades emergentes propias de un sistema de clulas cancerosas

CRECIMIENTO DE POBLACION CON LIMITACION DE RECURSOS

Los organismos pueden ser vistos como simples sistemas de entradas y salidas. Los organismos buscan su alimento para obtener los materiales de entrada y energa los cuales son transformados en una salida que consiste en su progenie. Ahora bien, los recursos se encuentran en forma limitada y esto hace que el tamao de una poblacin este determinada por la cantidad de recursos y viceversa.

La idea es construir un sistema donde los organismos tengan que buscan un recurso para permitir su reproduccin. Simularemos mediante un autnomo celular dos casos:

1. los recursos no son renovables y son consumidos por los organismos hasta agotarlos. 2. los recursos son renovables. Su recuperacin se debe a la aparicin aleatoria de nuevas fuentes de recursos. En este caso el recurso tiene capacidad de reproduccin y de dispersin aleatoria.

Cooperacin de individuo de una especieLa competencia y cooperacin de individuo de la misma especie, en un fenmeno importante que permite la organizacin de un grupo de individuos de una misma especie formando parches discretos. Este tipo de fenmenos tambin puede ser estudiado mediante la construccin de un autnomo celular sencillo.

Basado en el trabajo de Wilson [Wilson, 1997], construimos un autnomo celular que permita modelar la interseccin de individuos ssiles (organismo que vive sobre un sustrato fijo, sedentario) de una misma especie incorporando competencias por espacio y dos formas de cooperacin: mejoramiento de hbitat y reclutamiento.

* ResultadoLa simulacin se corre utilizando diferentes valores de z. Un menor valor de z indica que el efecto de la cooperacin es menor, y el caso contrario para un valor alto de z. Es decir, cundo un sistema tiene un alto valor de z, entonces existe una alta influencia de la cooperacin para evitar la mortalidad.

* ImplicacionesLas condiciones de mortalidad independientes de la densidad as como las dependientes, bajo ciertos parmetros, favorecern los comportamientos cooperativos. En este caso son favorables situaciones donde por cooperacin hay un aumento en el tamao de la poblacin en condiciones ideales. Aunque es un ejemplo sencillo, es convincente en trminos de las ventajas de la cooperacin dadas ciertas condiciones.En trminos de la simulacin, se hizo una experimentacin mediante el cambio en las probabilidades de cooperacin, manteniendo el resto de variables constantes. Este principio se simulacin y solo puede ser llevado a cabo mediante modelos tericos.

Por qu un lenguaje para especificar autmatas celulares?Muchos de los trabajos de AC han sido realizados programando AC especficos y no utilizado un constructor universal de AC. Aunque algunos programas tiles existen (Matemticas, CAM-PC, CellLab), no son accesibles para un bilogo investigador. Al disear un lenguaje que de forma simple permite construir cualquier Ac, es posible acercar a los investigadores a estos modelos. Que permite modelar sistemas de complejidad arbitraria.

Adems se describe el lenguaje tanto sintcticamente como semnticamente, los cual facilita que la investigacin construya sus propios procesadores del mismo lenguaje y puedan extender sus posibilidades.

CONCLUSIONES

1. Los autmatas son bastantes abstractos si los usamos podemos construir una mquina para todo tipo de expresin regular que describa un lenguaje, tan apreciamos que tiene dos funciones leer y almacenar dependiendo de qu informacin se pueda leer y que se pueda almacenar como ejemplo tenemos, El cliente puede enviar la orden de pagar y cancelar todas las veces que quiera.

2. Hay muchas aplicaciones sencillas y tambin complejas, los autmatas se pueden relacionar casi con todas las cosas que nos rodean, como el arte, el cine, la mecnica, la tecnologa en general.

3. Nuestra vida diaria est rodeada de aplicaciones de autmatas en los circuitos, robots, ascensores, inclusive en la medicina e inteligencia artificial.

4. Haber desarrollado este trabajo de autmatas, lenguajes y gramticas nos hace sentir la importancia de nuestra carrera, y las cosas importantes que podramos hacer o aumentar en la tecnologa actual.

5. Nos damos cuenta que no solo podemos comunicarnos entre nosotros en un solo idioma, sino que si queremos hablar en otro idioma, entonces lo tenemos que aprender, de la misma manera tenemos que aprender el lenguaje y el funcionamiento de la computadora para poder comunicarnos con ella.

6. Debemos de entender las reglas del lenguaje de mquina para poder hablarlo, y as utilizarlo y aplicar nuestros trabajos en la vida diaria.

7. Vimos como los autmatas celulares pueden ayudar mucho en la medicina, y as como este se pueden realizar muchos proyectos e investigaciones a favor de la humanidad.

8. Los autmatas son muy importantes para el anlisis sintctico y semntico de la programacin de computacin.

9. Vemos que los autmatas junto con la mecnica y la electricidad pero basada en la computacin puede ayudar demasiado en la construccin de robots e inteligencia artificial.

10. As tambin los autmatas nos ayudan en la biologa y hay programas que se han hecho y que se estn haciendo para poder mejorar la aplicacin de los autmatas.

BIBLIOGRAFIA

http://es.wikipedia.org/wiki/Aut%C3%B3mata_celularhttp://www.monografias.com/trabajos16/automatas-y-gramaticas/automatas-y-gramaticas.shtmlhttp://delta.cs.cinvestav.mx/~mcintosh/oldweb/tesis/seck/node13.htmlhttp://www.monografias.com/trabajos6/larobo/larobo.shtmlhttp://www.monografias.com/trabajos6/larobo/larobo.shtmlhttp://www.ucse.edu.ar/fma/staff/svcavadini/Ensenanza-para-la-comprension.pdfhttp://jth2006.unizar.es/finals/4jth_152.pdfhttp://html.rincondelvago.com/automatas_lenguajes.htmlhttp://www.di.uniovi.es/procesadores/Apuntes/ConceptosBasicos/AUTOMATA.pdfhttp://www.monografias.com/trabajos16/automatas-y-gramaticas/automatas-y-gramaticas.shtmlhttp://webdelprofesor.ula.ve/ciencias/jlchacon/materias/discreta/automatas.pdfhttp://www.monografias.com/trabajos62/teoria-gramatica-lenguaje-automata/teoria-gramatica-lenguaje-automata2.shtmlhttp://es.wikipedia.org/wiki/Aut%C3%B3mata_finitohttp://www.monografias.com/trabajos-pdf/automatas-f