Está en la página 1de 8

TEORIA DE AUTOMATAS

Diferencia entre un Autmata Finito Determinista y un


Autmata Finito No Determinista
Un autmata finito determinista (AFD)
Es un autmata finito que adems es un sistema determinista; es decir, para cada
estado q Q en que se encuentre el autmata, y con cualquier smbolo a del alfabeto
ledo, existe siempre a lo ms una transicin posible (q,a).
En un AFD no pueden darse ninguno de estos dos casos:

Que existan dos transiciones del tipo (q,a)=q1 y (q,a)=q2, siendo q1 q2;
Que existan transiciones del tipo (q,), salvo que q sea un estado final, sin
transiciones hacia otros estados.
Un autmata finito no determinista (AFND)
Es aquel que, a diferencia de los autmatas finitos deterministas, posee al menos un
estado q Q, tal que para un smbolo a del alfabeto, existe ms de una transicin (q,a)
posible.
Haciendo la analoga con los AFDs, en un AFND puede darse cualquiera de estos dos casos:

Que existan transiciones del tipo (q,a)=q1 y (q,a)=q2, siendo q1 q2;


Que existan transiciones del tipo (q,), siendo q un estado no-final, o bien un estado
final pero con transiciones hacia otros estados.
Cuando se cumple el segundo caso, se dice que el autmata es un autmata finito no
determinista con transiciones vacas o transiciones (abreviado AFND-). Estas transiciones
permiten al autmata cambiar de estado sin procesar ningn smbolo de entrada.
Formalmente, se distingue de la 5-tupla que define a un autmata finito determinista en
sufuncin de transicin. Mientras en un AFD esta funcin se define de la siguiente manera:
en un AFND se define como:
Para el caso de los AFND-, se suele expresar la funcin de transicin de la forma:
donde P(Q) es el conjunto potencia de Q.
Esto significa que los autmatas finitos deterministas son un caso particular de los no
deterministas, puesto que Q pertenece al conjunto P(Q).
La interpretacin que se suele hacer en el cmputo de un AFND es que el automta puede
estar
en
varios
estados
a
la
vez,
generndose
una
ramificacin
de
las configuracionesexistentes en un momento dado. Otra interpretacin puede ser imaginar que
la mquina "adivina" a qu estado debe ir, eligiendo una transicin entre varias posibles.
Note finalmente que en un autmata finito no determinista podemos aceptar la existencia de
ms de un nodo inicial, relajando an ms la definicin original.

Autmata finito no determinista

En este ejemplo, (q0,b)=q0 y (q0,b)=q1. Por lo tanto, se trata de un autmata finito no determinista,
que reconoce la expresin regular (a|b)*b+.

Un autmata finito no determinista (abreviado AFND) es un autmata finito que, a


diferencia de los autmatas finitos deterministas(AFD), posee al menos un estado q Q,
tal que para un smbolo a del alfabeto, existe ms de una transicin (q,a) posible.
En un AFND puede darse cualquiera de estos dos casos:

Que existan transiciones del tipo (q,a)=q1 y (q,a)=q2, siendo q1 q2;


Que existan transiciones del tipo (q, ), siendo q un estado no-final, o bien un
estado final pero con transiciones hacia otros estados.

Cuando se cumple el segundo caso, se dice que el autmata es un autmata finito no


determinista con transiciones vacas otransiciones (abreviado AFND-). Estas
transiciones permiten al autmata cambiar de estado sin procesar ningn smbolo de
entrada. Considrese una modificacin al modelo del autmata finito para permitirle
ninguna, una o ms transiciones de un estado sobre el mismo smbolo de entrada.
ndice
[ocultar]

1Definicin formal

2Funcionamiento

3Implementacin

4AFND-
o

4.1Propiedades

4.2Aplicacin

5Ejemplo

6Vase tambin

7Referencias

8Bibliografa

Definicin formal[editar]

Formalmente, si bien un autmata finito determinista se define como una 5-tupla (Q, , q0,
, F) donde:1

es un conjunto de estados;

es un alfabeto;

es el estado inicial;

es una funcin de transicin;

es un conjunto de estados finales o de aceptacin.

en un AFND la funcin de transicin se define como:


Para el caso de los AFND-, se suele expresar la funcin de transicin de la forma:
donde P(Q) es el conjunto potencia de Q. Esto significa que los autmatas finitos
deterministas son un caso particular de los no deterministas, puesto
que Q pertenece al conjunto P(Q).
La interpretacin que se suele hacer en el cmputo de un AFND es que el
automta puede pasar por varios estados a la vez, generndose una ramificacin
de lasconfiguraciones existentes en un momento dado. Asimismo, en un autmata
finito no determinista podemos aceptar la existencia de ms de un nodo inicial.

Funcionamiento[editar]
La mquina comienza en el estado inicial especificado y lee una cadena de
caracteres pertenecientes al alfabeto. El autmata utiliza la funcin de transicin
de estados T para determinar el siguiente estado, usando el estado actual y el
smbolo que acaba de leer o la cadena vaca. Sin embargo, "el estado siguiente de
un AFND no slo depende de el evento de entrada actual, sino que tambin en un
nmero arbitrario de los eventos de entrada posterior. Hasta que se producen
estos acontecimientos posteriores no es posible determinar en qu estado se
encuentra la mquina" . Cuando el autmata ha terminado de leer, y se encuentra
en un estado de aceptacin, se dice que el AFND acepta la cadena, de lo contrario
se dice que la cadena de caracteres es rechazada. Tanto para un AFND como
para un autmata finito determinista (AFD) se puede aceptar el mismo lenguaje.
Por lo tanto, es posible convertir un AFND existente en un AFD para el desarrollo
de una mquina tal vez ms simple. Esto puede llevarse a cabo utilizando la
construccin del conjunto potencia, que puede conducir a un aumento exponencial
en el nmero de estados necesarios.

Implementacin[editar]
Hay muchas formas de implementar una AFND:

Convertir al equivalente AFD: en algunos casos esto puede causar un


aumento exponencial en el tamao del autmata, y as un espacio auxiliar
proporcional al nmero de estados en el AFND (como el almacenamiento del
valor del estado requiere en la mayora de un bit por cada estado en el AFND).

Mantener un conjunto de datos de todos los estados en que la mquina podra


estar en la actualidad. Al consumir el ltimo carcter de entrada, si uno de
estos estados es un estado final, la mquina acepta la cadena. En el peor de
los casos, esto puede requerir espacio adicional proporcional al nmero de

estados en el AFND; si la estructura del conjunto usa un bit por estado del
AFND, entonces esta solucin es exactamente equivalente a la anterior.

Crear mltiples copias. Por cada n forma de la decisin, el AFND crea hasta n1 copias de la mquina. Cada uno de ellos entrara en un estado
independiente. Si, al momento de consumir el ltimo smbolo de la entrada, al
menos una copia del AFND esta en un estado de aceptacin, el AFND lo
aceptar. (Esto tambin requiere un almacenamiento lineal con respecto al
nmero de estados del AFND, ya que puede haber una mquina por cada
estado del AFND).

AFND-[editar]
Propiedades[editar]
Para todo , se escribe si y solo si a se pude llegar desde , yendo a lo largo de
cero o ms flechas . En otras palabras, si y slo si existe donde tal que
.
Para cualquier , el conjunto de estados que se puede llegar a partir de p se
llama epsilon-closure o -closure de p y se escribe como
.
Para cualquier subconjunto , definir el -closure de P como
.
Las transiciones epsilon son transitive, ya que puede demostrarse que
para todo y , si y , entonces .
Del mismo modo, si y entonces Sea x una cadena del alfabeto
{}. Un AFND- M acepta la cadena x si existe tanto una
representacin de x de la forma x1x2 ... xn, donde xi ( {}), y una
secuencia de estados
p0,p1, ..., pn, donde pi Q, Cumplindose las siguientes condiciones:
1. p0 E({q0})
2. pi E(T(pi-1, xi )) para i = 1, ..., n
3. pn F.

Aplicacin[editar]
El AFND y el AFD son equivalentes en esto, ya que si un lenguaje es
reconocido por el AFND, tambin ser reconocido por un AFD, y
viceversa. El establecimiento de esta equivalencia es til porque a
veces la construccin de un AFND para reconocer un lenguaje
determinado es ms fcil que construir un AFD para dicho lenguaje.
Tambin es importante porque el AFND se puede utilizar para reducir
la complejidad del trabajo matemtico necesario para establecer
muchas propiedades importantes en la teora de la computacin. Por
ejemplo, es mucho ms fcil demostrar las siguientes propiedades
utilizando un AFND que un AFD:

La unin de dos lenguajes regulares es regular.

La concatenacin de dos lenguajes regulares es regular.

La Clausura de Kleene en un Lenguaje regular es regular.

Ejemplo[editar]
El ejemplo siguiente muestra un AFND M, con un alfabeto binario que
determina si la entrada contiene un nmero par de 0s o un nmero
par de 1s. Entonces M = (Q, , T, s0,F) donde:

S0
S1
S2
S3
S4

= {0, 1},

Q = {s0, s1, s2, s3, s4},

E({s0}) = { s0, s1, s3 }

F = {s1, s3}, y

La funcin de transicin T puede ser definida por esta tabla de


transicin de estados:
0

{}
{S2}
{S1}
{S3}
{S4}

{}
{S1}
{S2}
{S4}
{S3}

{S1, S3}
{}
{}
{}
{}

El diagrama de estados para M es:

M puede ser visto como la unin de dos AFDs: uno con los
estados {S1, S2} y el otro con los estados {S3, S4}.
El lenguaje de M puede ser descrito por el lenguaje regular dado
por la expresin regular:

Autmata finito determinista

Autmata finito determinista que reconoce el lenguaje regular conformado exclusivamente por las
cadenas con un nmero par de ceros y un nmero par de unos.

Ejemplo de AFD con dos estados. En nodo de la izquierda es inicial y de aceptacin.

Un autmata finito determinista (abreviado AFD) es un autmata finito que adems es


un sistema determinista; es decir, para cada estado en que se encuentre el autmata, y
con cualquier smbolo del alfabeto ledo, existe siempre no ms de una transicin posible
desde ese estado y con ese smbolo.

Definicin formal[editar]
Formalmente, se define como una 5-tupla (Q, , q0, , F) donde:1

es un conjunto de estados;

es un alfabeto;

es el estado inicial;

es una funcin de transicin;

es un conjunto de estados finales o de aceptacin.

En un AFD no pueden darse ninguno de estos dos casos:

Que existan dos transiciones del tipo (q,a)=q1 y (q,a)=q2, siendo q1 q2;

Que existan transiciones del tipo (q, ), donde es la cadena vaca, salvo
que q sea un estado final, sin transiciones hacia otros estados.

APLICACIN DE LOS AUTOMATAS FINITOS EN ELECTRONICA Las mquinas de


estado finito son importantes en la aplicacin en la electrnica, son
aceptadores de smbolos las aplicaciones ms importantes que tenemos en
la electrnica es en la creacin de los circuitos, ya que tiene que reconocer
que una cadena de smbolos se idntica a otra y as dejar pasar los datos.
APLICACIN DE LOS AUTOMATAS FINITOS EN SISTEMAS EMBEBIDOS PARA
APLICACIONES DE CONTROL (TRANSDUCCION) HORNO MICROONDAS: El
horno microondas posee una puerta. Si la puerta est cerrada, entonces
puede estar o no en funcionamiento (segn se prenda o apague). Estando
prendido no es posible abrir la puerta del horno sin antes apagarlo. Tambin
asumamos lo siguiente: en cualquier momento es posible establecer el
modo de coccin. TERMOSTATO: Un termostato es el componente de un
sistema de control simple que abre o cierra un circuito elctrico en funcin
de la temperatura, regula la potencia de calefaccin(salida) en funcin a la
temperatura ambiente(dato de entrada), pasando de un estado trmico a
otro. LAVADORA: Supongamos que disponemos de una lavadora, que
externamente tiene tres botones: Encender, Detener, Lavar; de un indicador
luminoso L, y de un interruptor ubicado en la puerta. Se consideran eventos
(entradas) la activacin de los botones de la consola y del interruptor de la
puerta. El indicador luminoso es una accin (salida) que debe ejecutarse. Se
visualizan tres estados asociados a la lavadora: apagada, detenida y
lavando. La deteccin de cules son los estados, est basada en la
visualizacin de situaciones distinguibles que se mantienen

APLICACIN DE LOS AUTOMATAS FINITOS EN COMUNICACIONES 1.


PROTOCOLO DE COMUNICACIONES Un protocolo de comunicaciones es el
conjunto de reglas normalizadas para la representacin, sealizacin,
autenticacin y deteccin de errores necesario para enviar informacin a
travs de un canal de comunicacin. Un ejemplo de un protocolo de
comunicaciones simple adaptado a la comunicacin por voz es el caso de un
locutor de radio hablando a sus radioyentes. Los protocolos de
comunicacin para la comunicacin digital por redes de computadoras
tienen caractersticas destinadas a asegurar un intercambio de datos fiable
a travs de un canal de comunicacin imperfecto. Los protocolos de

comunicacin siguen ciertas reglas para que el sistema funcione


apropiadamente. 2. TELEFONIA La modelacin con un autmatas de las
llamadas en esperase realiza a travs del concepto de operacin asociada a
un estado, es decir una operacin ejecutada continuamente en el estado,
as el estado Tono Ocupado produce continuamente el tono ocupado por lo
que se agrega en el estado la indicacin : Hacer Tono Ocupado. APLICACIN
DE LOS AUTOMATAS FINITOS EN INTELIGENCIA ARTIFICIAL Las mquinas de
estado finito tienen un gran futuro en la aplicacin en inteligencia artificial.
En la inteligencia artificial su principal objetivo es la creacin de un agente
inteligente que sea capaz de actuar y razonar como un humano. Para la
creacin de este agente es necesario contar con un total conocimiento de la
gramtica y los lenguajes formales que se requiere que el agente utilice,
para esto debe contar un una mquina que sea capaz de aceptar los
smbolos y reconocer las cadenas que se estn usando.

APLICACIN DE LOS AUTOMATAS FINITOS EN RUTEO


Las FSM se usan para de
scribir de qu manera un dispositivo, un programa informtico o un
algoritmo de enrutamiento reaccionar ante un conjunto de eventos de
entrada.
La Mquina de Estado Finito DUAL realiza todo el proceso de decisin para
todos los clculos de ruta.

FSM D
UAL (Algoritmo de actualizacin por difusin) rastrea todas las rutas, utiliza
su mtrica para seleccionar rutas eficientes y sin bucles, y selecciona las
rutas con la ruta de menor costo para insertarla en una tabla de
enrutamiento.

También podría gustarte