Automatas de Moore, Mealy

July 11, 2022 | Author: Anonymous | Category: N/A
Share Embed Donate


Short Description

Download Automatas de Moore, Mealy...

Description

INSTITUTO POLITECNICO NACIONAL Escuela Superior de Ingeniería Mecánica y Eléctrica Unidad Culhuacan

TEORIA DE AUTOMATAS

Docente: RODRIGUEZ MORENO IOVANNA A

Alumno:

Munguía González Julián Grupo:

4CM4 Trabajo:



Autómata de Moore Autómata de Mealy



Autómata de Minsky



Autómata de celular



¿Quién crea el Autómata de Moore? El nombre Moore machine viene de su promotor: Edward F. Moore, un pionero de las máquinas de estados, quien escribió Gedanken-experiments on Sequential Machines, pp 129 – 129 – 153,  153, Estudios de Autómatas, Anales de los Estudios Matemáticos, no. 34, Princeton University Press, Princeton, N. J., 1956. ¿Qué es el Autómata de Moore? En la Teoría de la computación, una Máquina de Moore es un autómata de estados finitos donde las salidas están determinadas por el estado actual únicamente (y no depende directamente de la entrada). El diagrama de estados para una máquina Moore incluirá una señal de salida para cada estado. Comparada con la Máquina de Mealy, la cual mapea transiciones en la máquina a salidas.

¿Cómo se puede definir la máquina de moore? Una máquina de Moore puede ser definida como una 6-tupla 6-tupla { S, S0, Σ, Λ, T, G } consistente de:       

un conjunto finito de estados ( S ) un estado inicio (también llamado estado inicial) S0 el cual es un elemento de (S) un conjunto finito llamado alfabeto entrada ( Σ ) un conjunto finito llamado el alfabeto salida ( Λ ) una función de transición (T : S × Σ → S) mapeando un estado y una entrada al siguiente estado una función salida (G : S → Λ) mapeando cada estado al alfabeto salida. El número de estados en una máquina de Moore será mayor o igual al número de estados en la Máquina de Mealy correspondiente.

¿Cómo Funciona la Máquina De Moore. La semántica procedimental  de  de la máquina de Moore es la siguiente:  Al inicio de cualquier computación, la máquina se encuentra en el estado q0. Posteriormente, cuando la máquina se encuentra en un estado

, y recibe una literal de entrada

y emite el símbolo de salida

.

, entonces transita al nuevo estado

¿Quién crea el Autómata de Moore? El nombre Moore machine viene de su promotor: Edward F. Moore, un pionero de las máquinas de estados, quien escribió Gedanken-experiments on Sequential Machines, pp 129 – 129 – 153,  153, Estudios de Autómatas, Anales de los Estudios Matemáticos, no. 34, Princeton University Press, Princeton, N. J., 1956. ¿Qué es el Autómata de Moore? En la Teoría de la computación, una Máquina de Moore es un autómata de estados finitos donde las salidas están determinadas por el estado actual únicamente (y no depende directamente de la entrada). El diagrama de estados para una máquina Moore incluirá una señal de salida para cada estado. Comparada con la Máquina de Mealy, la cual mapea transiciones en la máquina a salidas.

¿Cómo se puede definir la máquina de moore? Una máquina de Moore puede ser definida como una 6-tupla 6-tupla { S, S0, Σ, Λ, T, G } consistente de:       

un conjunto finito de estados ( S ) un estado inicio (también llamado estado inicial) S0 el cual es un elemento de (S) un conjunto finito llamado alfabeto entrada ( Σ ) un conjunto finito llamado el alfabeto salida ( Λ ) una función de transición (T : S × Σ → S) mapeando un estado y una entrada al siguiente estado una función salida (G : S → Λ) mapeando cada estado al alfabeto salida. El número de estados en una máquina de Moore será mayor o igual al número de estados en la Máquina de Mealy correspondiente.

¿Cómo Funciona la Máquina De Moore. La semántica procedimental  de  de la máquina de Moore es la siguiente:  Al inicio de cualquier computación, la máquina se encuentra en el estado q0. Posteriormente, cuando la máquina se encuentra en un estado

, y recibe una literal de entrada

y emite el símbolo de salida

.

, entonces transita al nuevo estado

¿Con que objetivo se desarrollaron las maquinas de Moore? La mayoría de las máquinas electrónicas están diseñadas como sistemas secuenciales síncronos. Los sistemas secuenciales síncronos son una forma restringida de máquinas de Moore donde el estado cambia solo cuando la señal de reloj global cambia. Normalmente el estado actual se almacena en Flip-flops, y la señal de reloj global está conectada a la entrada "clock" de los flip-flops. Los sistemas secuenciales síncronos son una manera de resolver problemas de Metastabilidad. ¿Qué incluye una maquina de Moore? Una máquina electrónica de Moore típica incluye una cadena de Lógica combinacional para decodificar el estado actual en salidas (lambda). El instante en el cual el estado actual cambia, aquellos cambios se propagan a través de la cadena. y casi instantáneamente las salidas cambian (o no cambian). Hay técnicas de diseño para asegurar que no ocurran errores de corta duración en las salidas durante el breve periodo mientras esos cambios se están propagando a través de la cadena, pero la mayoría de los sistemas están diseñados para que los glitches durante el breve tiempo de transición sean ignorados. Las salidas entonces permanecen igual indefinidamente (por ejemplo, los LEDs permanecen brillantes, la batería permanece conectada a los motores, etc.), hasta que la máquina de Moore cambia de estado otra vez. ¿Cómo es la representación grafica de un autómata de Moore? La representación es como la de un AFD sin estados finales. En cuanto a la función de salida se representa al lado del nombre del estado y separado por una barra '/'

Fig. 3.1. Diagrama de la máquina de Moore MO1. Si en la cinta de entrada tuviesemos la palabra 0000 en la cinta de salida se obtendríamos la secuencia NNYYY; si en entrada tenemos 01011, en la salida obtenemos NNNNNN ¿Menciona de que partes se compone un Autómata de Moore?

EJEMPLOS

Congruencias módulo 3.

Supongamos que se da un número en su representación binaria y se quiere calcular su residuo módulo 3. Consideremos la máquina cuya representación gráfica se muestra en la figura (3.3). Figure 3.3: Máquina de Moore para calcular congruencias módulo 3 de números dados en binario.

Las funciones de transición y de respuesta quedan especificadas de manera tabular como sigue:

Por inducción en la longitud n de cualquier palabra

, que sea la representación en

binario de un número se puede ver que la respuesta final obtenida al aplicar es En efecto, para n=1, con las palabras '0' y '1' se tiene las respuestas correctas 0 y 1. Sea n>0. Supongamos que para una palabra , de longitud n-1, se tiene como respuesta final i , donde y x es el número representado en binario por . Para el número representado por la concatenación de con s, es 2 x +s, el cual es congruente módulo 3 con . Al tabular estos últimos valores se tiene:

.

lo que corresponde naturalmente a la tabla de transiciones del autómata construído. De hecho, éste es un caso particular del siguiente ejemplo más general: Sea n>1 una base de representación de números naturales y sea k >0 un número natural. Sea



posee n símbolos de entrada



posee k estados



tiene como transición a la función



tiene como respuesta

Entonces

la máquina de Moore tal que:

, , y k  símbolos de salida, uno por cada estado. ,y

.

calcula el residuo módulo k   de cualquier número en base n. En la

tabla presentamos las tablas de transición de las máquinas

, para k = 5,7,13.

2. Problema de botes.

Supongamos dados k >1 botes. Para cada , sea la capacidad, en litros, del i -ésimo bote. Los botes pueden ser llenados de agua o bien ser vaciados de acuerdo con las siguientes reglas:

Li 

: llénese el i -ésimo bote,

V i 

: vacíese el i -ésimo bote,

M i1  i 2 :

Viértase el contenido del i 1-ésimo bote en el i 2-ésimo hasta que aquel se vacíe o éste se llene.

Si se considera a los dos primeros botes como distinguidos, se trata de caracterizar a las cantidades de agua “constructibles'' como suma de los contenidos de esos dos primeros botes. Sean pues:

Las transiciones quedan caracterizadas de la siguiente forma:

La respuesta es la función

.

Ejemplo 3

Ejemplo 4

Ejemplo 5

Ejemplo 6. Congruencias módulo 3.

Supongamos que se da un número

en su representación binaria y se

quiere calcular su residuo módulo 3. Consideremos la máquina cuya representación gráfica se muestra en la figura (3.3).

Figure 3.3: Máquina de Moore para calcular congruencias módulo 3 de

números dados en binario.

Las funciones de transición y de respuesta quedan especificadas de manera tabular como sigue:

Por inducción en la longitud n de cualquier palabra representación en binario de un número final obtenida al aplicar

es

, que sea la

se puede ver que la respuesta

. En efecto, para n=1, con las palabras

'0' y '1' se tiene las respuestas correctas 0 y 1. Sea n>0. Supongamos que para una palabra

, de longitud n-1, se tiene como respuesta final i , donde

y  x  es el número representado en binario por el número representado por la concatenación de es congruente módulo 3 con

con s,

. Para es 2 x +s, el cual

. Al tabular estos últimos valores se

tiene:

lo que corresponde naturalmente a la tabla de transiciones del autómata construído. De hecho, éste es un caso particular del siguiente ejemplo más general: Sea n>1 una base de representación de números naturales y sea k >0 un número natural. Sea

la máquina de Moore tal que:





posee n símbolos de entrada posee k  estados estado.

, , y k   símbolos de salida, uno por cada



tiene como transición a la función



tiene como respuesta

Entonces

,y

.

calcula el residuo módulo k  de cualquier número en base

n. En la tabla (3.3)  presentamos las tablas de transición de las máquinas

, para k = 5,7,13.

Tabla 3.3: Cálculo de residuos módulo 5, 7 y 13 en notación decimal.

No se tendrá dificultad en visualizar, a partir de esos ejemplos, las transiciones de cualquier máquina

.

Autómata de Mealy ¿Qué es el Autómata de Mealy?

En la teoría de la computación, una Máquina de Mealy es un tipo de máquina de estados finitos que genera una salida basándose en su estado actual y una entrada. Esto significa que el Diagrama de estados incluirá ambas señales de entrada y salida para cada línea de transición. ¿Cuándo surge el Autómata de Mealy?

El nombre "Máquina de Mealy" viene del promotor del concepto: G. H. Mealy, un pionero de las máquinas de estados, quien escribió Un Método para sintetizar Circuitos Secuenciales, Bell System Tech. J. vol 34, pp. 1045 –1079, September 1955. ¿Cómo es el diseño de este autómata?

Las máquinas de Mealy suministran un modelo matemático rudimentario para las máquinas de cifrado. Considerando el alfabeto de entrada y salida del alfabeto Latino, por ejemplo, entonces una máquina de Mealy puede ser diseñada para darle una cadena de letras (una secuencia de entradas), esto puede procesarlo en un string cifrado (una secuencia de salidas). Sin embargo, aunque se podría probablemente usar un modelo de Mealy para describir una Máquina Enigma, el diagrama de estados sería demasiado complejo para suministrar medios factibles de diseñar máquinas de cifrado complejas. ¿Cuál es la definición formal de este autómata?

Es una maquina abstracta capaz de adoptar los distintos estados del conjunto Q a través de su historia. Es capaz de reaccionar a los estímulos exteriores del conjunto E evolucionando hacia un estado y produciendo una salida del conjunto S dependiendo del estado en que se encuentra y de la salida. Una máquina de Mealy  es una estructura de la forma

Donde:

¿Cómo Funciona la Maquina de Mealy?

La semántica procedimental  de la máquina de Mealy es la siguiente:  Al inicio de cualquier computación, la máquina se encuentra en el estado q0. Posteriormente, cuando la máquina se encuentra en un estado entonces emite el símbolo de salida

, y recibe una literal de entrada y transita al nuevo estado

, .

Gráficamente, representamos esto de la siguiente manera:

q0 es el estado inicial .

Si se está en q y llega e entonces se emite

y se transita a .

¿Cómo se representa una maquina de mealy?

La única novedad es que las flechas llevan doble etiquetado: el símbolo que se lee en cinta y el que se escribe en la salida, separados ambos con una barra inclinada. La máquina de Mealy del ejemplo se representa

EJEMPLOS:

Residuos módulo 4 Si entonces es la representación unaria de n. Presentaremos una máquina que calcula el residuo módulo 4, de una cadena de 1's, cuando se ve a esa cadena como la representación unaria de un número no-negativo. Representamos gráficamente a la máquina en la figura (3.1-a).

Figure 3.1: Máquina de Mealy para el cálculo de residuos módulo 4 en representación unaria.

Esta máquina es donde las funciones tran y res están dadas como sendas tablas en la figura (3.1-b). Aquí se puede confundir el conjunto de estados con el alfabeto de salida de manera muy natural: el i -ésimo estado es un i ésimo

símbolo

Ejemplo2. Repetición final de un mismo símbolo

de

salida.

Construyamos una máquina de Mealy que reconozca a las palabras en (0+1) que terminan con la repetición de un mismo símbolo. Es decir, que reconozca a palabras en el alfabeto L = (0+1)*(00+11). Gráficamente, presentamos a la máquina en la figura (3.2).

Figure 3.2: Máquina de Mealy para reconocer palabras que terminan con un símbolo repetido.

La interpretación de cada estado es natural:

Se tiene una respuesta afirmativa cuándo se permanece en un mismo estado. Las componentes de la máquina son pues

,

y

Ejemplo 3. Máquina expendedora de golosinas.

Consideremos una máquina expendedora de golosinas, de $4 pesos cada una, que recibe monedas de $1, $2, $5 y $10 pesos. Supongamos que la máquina funciona bajo los siguientes supuestos: 





el costo de las golosinas puede cubrirse con cualquier combinación de monedas aceptables, la máquina sólo da cambio en monedas de $1 peso, las cuales están almacenadas en una alcancía. Si no puede dar cambio, es decir, si el contenido de la alcancía no es suficiente, regresa la moneda insertada, y sólo se puede insertar monedas en orden inverso a su denominación.

Codifiquemos el funcionamiento de la máquina con los conjuntos siguientes:



Monedas a insertarse :



Respuestas de la máquina :



Estados de la máquina :

Depó sito en la alcancía: 

La máquina de Mealy que modela el funcionamiento de la máquina expendedora tiene como alfabeto de entrada el producto cartesiano del conjunto de monedas aceptables con el conjunto que codifica a los depósitos de la alcancía. Hay pues

símbolos de entrada

. El alfabeto de

salida está dado por las 4 posibles respuestas que da la máquina expendedora. Hay 1+6+2+3=12 estados. A grandes rasgos las transiciones se definen como se muestra en las tablas (3.1) y (3.2).

Tabla 3.1. Transiciones y repuestas de la máquina expendedora.

si se inserta una moneda de $10 pesos y no hay cambio suficiente, se devuelve la moneda y se reinicia el proceso, ya que lo hay, procédase a dar cambio, Para P= p j , cualquiera que sea j , continúese devolviendo un peso hasta completar el cambio. Obsérvese que aquí, en principio, puede haber combinaciones (ak , pj ) contradictorias. Sin embargo, la interpretación que se está construyendo excluye que aparezcan esas inconsistencias. al terminar de dar el cambio, se entrega la golosina y se reinicia el proceso.

Tabla 3.2: Transiciones y repuestas de la máquina expendedora (cont).

si se inserta una moneda de $5 pesos y no hay cambio, se devuelve la moneda y se reinicia el proceso, si hay monedas en la alcancía, i.e.

,

entonces se da el peso de cambio, se insertan $2 pesos y se espera a completar el importe de $4 pesos, habiéndose completado el costo de la golosina, se lo entrega y se reinicia el proceso, se inserta un peso más y hay que esperar a que llegue el último, si llega una moneda con denominación mayor M=m5,m10 entonces se la

devuelve y se continúa la

espera, si se inicia el pago con una moneda de un peso hay que esperar los otros tres pesos, se continúa el pago, recibiendo un peso a la vez. Aquí c0=a0. Si se recibe monedas de mayor denominación, se devuelven éstas. cualquier otra posibilidad (Estado,Entrada) es inconsistente e inalcanzable en la máquina.

Autómata de Celular ¿Cuándo surges los autómatas celulares?

Los autómatas celulares(AC) surgen en la década de 1940 con John Von Neumann, que intentaba modelar una maquina que fuera capaz de autoreplicarse, llegando así a un modelo matemático de dicha maquina con reglas complicadas sobre una red rectangular. ¿Qué es un autómata de celular?

Un autómata celular es un modelo matemático para un sistema dinámico, compuesto por un conjunto de celdas o células que adquieren distintos estados o valores. Estos estados son alterados de un instante a otro en unidades de tiempo discreto, es decir, que se puede cuantificar con valores enteros a intervalos regulares. De esta manera este conjunto de células logran una evolución según una determinada expresión matemática, que es sensible a los estados de las células vecinas, la cual se le conoce como regla de transición local. ¿Características del autómata celular?

El aspecto que más caracteriza a los AC es su capacidad de lograr una serie de propiedades que surgen de la propia dinámica local a través del paso del tiempo y no desde un inicio, aplicándose a todo el sistema en general. Por lo tanto no es fácil analizar las propiedades globales de un AC desde su comienzo, complejo por naturaleza, a no ser por vía de la simulación, partiendo de un estado o configuración inicial de células y cambiando en cada instante los estados de todas ellas de forma síncrona. ¿Cuáles son los elementos de una Autómata Celular?

La definición de un AC requiere mencionar sus elementos básicos:  Arreglo Regular. Ya sea un plano de 2 dimensiones o un espacio n-dimensional, este es el espacio de evoluciones, y cada división homogénea de arreglo es llamada célula. Conjunto de Estados. Es finito y cada elemento o célula del arreglo toma un valor de este conjunto de estados. También se denomina alfabeto. Puede ser expresado en valores o colores. Configuración Inicial. Consiste en asignar un estado a cada una de las células del espacio de evolución inicial del sistema Vecindades. Define el conjunto contiguo de células y posición relativa respecto a cada una de ellas. A cada vecindad diferente corresponde un elemento del conjunto de estados Función Local. Es la regla de evolución que determina el comportamiento del AC. Se conforma de una célula central y sus vecindades. Define como debe cambiar de estado cada célula dependiendo de los estados anteriores de sus vecindades. Puede ser una expresión algebraica 



 





¿Aplicaciones de los autómatas celulares?

Los autómatas celulares han sido utilizados con éxito en distintas disciplinas.

Por ejemplo, en Física es una de las técnicas mas interesantes para simular fenómenos concretos en dinámica de fluidos. En el estudio de los sistemas complejos en Biología, los AC representan desde mediados de los 80 una seria alternativa a la modelización con ecuaciones diferenciales. En 1986 Wolfram publica la obra Teoria y Aplicación de los Autómatas Celulares, promoviendo el interés por esta técnica de modelización y simulación. En ese mismo año Langton propone la utilización de los AC como técnica principal para el estudio de la vida artificial. Uno de los factores que mas a contribuido a su uso es la sencillez con que se pueden realizar simulaciones.  A finales de los años 90 el uso de los AC abarcan numerosas disciplinas, siendo de gran utilidad en el estudio de sistemas biológicos: reproducción, auto-organización, evolución, etc. En Química se utiliza para el estudio cinético de las reacciones y en la simulación del crecimiento de los cristales. Una de las aplicaciones mas interesantes hoy en día, es en las Ciencias de la Computación, donde los AC han permitido a los investigadores construir modelos con los que estudiar fácilmente el procesamiento de información en paralelo así como el diseño de computadoras cuya arquitectura sea basada en principios y materiales biológicos.

Ejemplos

Autómata de Minsky

La máquina de Misky es una comparativa con 2 PDA, sin embargo a diferencia de esté, la máquina de Minsky es de tipo determinista. Una máquina de este tipo puede o no depender de un CFL. La representación grafica para este tipo de máquina es:

¿Quién creo el Autómata de Misky?

Marvin Lee Minsky es un científico estadounidense considerado uno de los padres de las ciencias de la computación, Es cofundador del Laboratorio de Inteligencia Artificial del MIT (Massachusetts Institute of Technology) y profesor de Arte y Ciencias de la Comunicación. ¿En que campos realizo sus investigaciones?

Sus investigaciones han sido fundamentales en campos muy diversos: inteligencia artificial, psicología, óptica, matemáticas, robótica o tecnología espacial. Es además uno de los investigadores punteros en inteligencia robótica, diseñador y constructor de los primeros brazos mecánicos con sensores táctiles, escáneres visuales, o simuladores de redes neuronales. ¿Qué características poseen las maquinas que Minsky?

Trata a las máquinas casi como si fueran seres humanos y trabaja para conseguir que piensen por sí mismas.

View more...

Comments

Copyright ©2017 KUPDF Inc.
SUPPORT KUPDF