You are on page 1of 17

TECNOLGICO DE ESTUDIOS SUPERIORES DE

CUAUTITLN IZCALLI
Cdigo: FO-205P11000-XX
FORMATO DE ENTREGA
DE EVIDENCIAS
Pgina 1de17
DIVISIN.
INGENIERA EN SISTEMAS COMPUTACIONALES
ASIGNATURA.
DOCENTE.
LENGUAJES Y AUTMATAS I
NOMBRE DEL ALUMNO.
NO. DE CONTROL.
ARCINIEGA SOTO GERARDO

GRUPO.

FECHA

RAMIREZ OSORIO MARIO ALBERTO


PRODUCTO.

CALIFICACIN Y FIRMA

UNIDAD 3

DEL PROFESOR.

TECNOLOGICO DE ESTUDIOS SUPERIORES DE CUAUTITLAN IZCALLI


AUTOMATAS FINITOS

ARCINIEGA SOTO GERARDO


RAMIREZ OSORIO MARIO ALBERTO
352-M

CARRERA:
ING. SISTEMAS COMPUTACIONALES
MATERIA:
LENGUAJES Y AUTOMATAS

INDICE

352 - M

N ACTIVIDAD

TECNOLGICO DE ESTUDIOS SUPERIORES DE


CUAUTITLN IZCALLI
Cdigo: FO-205P11000-XX
FORMATO DE ENTREGA
DE EVIDENCIAS
Pgina 2de17

DEFINICION FORMAL............................................................................................3
CLASIFICACION DE LOS AUTOMOTAS FINITOS................................................4
CONVERSION DE UN AFND A UN AFN................................................................7
REPRESENTACIN DE EXPRESIN REGULAR USANDO AUTMATAS FINITOS
NO DETERMINISTAS (ER-AFND)........................................................................11
MINIMIZACIN DE ESTADOS DE AUTMATA FINITO (AF)...............................14

APLICACIONES (DEFINICIN DE UN CASO DE ESTUDIO).............................15

UNIDAD 3 AUTOMATAS FINITOS

TECNOLGICO DE ESTUDIOS SUPERIORES DE


CUAUTITLN IZCALLI
Cdigo: FO-205P11000-XX
FORMATO DE ENTREGA
DE EVIDENCIAS
Pgina 3de17

3.1 DEFINICION FORMAL.


Un autmata finito o mquina de estado finito es un modelo matemtico de un sistema que recibe
una cadena constituida por smbolos de un alfabeto y determina si esa cadena pertenece al lenguaje
que el autmata reconoce. stos se definen mediante una quntupla (E, Q, f, q0, F ) donde:
E: alfabeto de entrada.
Q: conjunto de estados; es conjunto finito no vaco.
f: funcin de transicin. f(p,a)=q
q0 : (perteneciente a Q) estado inicial.
F: (perteneciente a Q) conjunto de estados finales o de aceptacin.

3.2 CLASIFICACION DE LOS AUTOMATAS FINITOS.

TECNOLGICO DE ESTUDIOS SUPERIORES DE


CUAUTITLN IZCALLI
Cdigo: FO-205P11000-XX
FORMATO DE ENTREGA
DE EVIDENCIAS
Pgina 4de17

Es un dispositivo que puede estar en un estado de entre un nmero finito de los mismos; uno de
ellos ser el estado inicial y por lo menos uno ser estado de aceptacin. Tiene un flujo de entrada
por el cual llegan los smbolos de una cadena que pertenecen a un alfabeto determinado.
Se detecta el smbolo y dependiendo de este y del estado enque se encuentre har una
transicin a otro estado o permanece en el mismo.

Porqu finito:
Se refiere que hay un conjunto finito de estados.
Porque determinista:
La palabra determinista es porque el programa no debe tener ambigedades, es decir, en
cada estado solo se puede dar una y solo una (ni dos ni ninguna) transicin para cada
smbolo posible.
El autmata acepta la cadena de entrada si la mquina cambia a un estado de aceptacin despus
de leer el ltimo smbolo de la cadena.

TECNOLGICO DE ESTUDIOS SUPERIORES DE


CUAUTITLN IZCALLI
Cdigo: FO-205P11000-XX
FORMATO DE ENTREGA
DE EVIDENCIAS
Pgina 5de17

Si despus del ltimo smbolo la mquina no queda en estado de aceptacin, se ha rechazado la


cadena. El autmata acepta la cadena de entrada si la mquina cambia a un estado de aceptacin
despus de leer el ltimo smbolo de la cadena.
Si despus del ltimo smbolo la mquina no queda en estado de aceptacin, se ha rechazado la
cadena.
Tuplas de autmatas finitos

El diagrama determinista estar caracterizado porque debe estar totalmente definido:


Para cada estado solo debe salir un arco y solo uno para cada smbolo (el autmata no puede
determinar la transicin en el caso de que haya dos arcos con el mismo smbolo o no haya ninguno).
Simbologa de los autmatas finitos

TECNOLGICO DE ESTUDIOS SUPERIORES DE


CUAUTITLN IZCALLI
Cdigo: FO-205P11000-XX
FORMATO DE ENTREGA
DE EVIDENCIAS
Pgina 6de17

Segundo ejemplo de autmatas finitos

El alfabeto S = { a, b, c }

Reconoce la cadena c

La cadena a

Las cadenas que empiezan por a y acaban en a o en b y

Las que empiezan por a, seguidas de una serie de a de b y acaban en c

TECNOLGICO DE ESTUDIOS SUPERIORES DE


CUAUTITLN IZCALLI
Cdigo: FO-205P11000-XX
FORMATO DE ENTREGA
DE EVIDENCIAS
Pgina 7de17

3.3 Conversin de un AFND- a un AFD


La conversin de un AFND- en un AFND se basa en el concepto de clausura-, que corresponde a
una clausura transitiva contextualizada en la teora de autmatas.

AFND inicial

Proceso de conversin

AFND final
Dado un estado q, se llama clausura-(q) al conjunto de todos los estados a los que se puede
acceder a partir de q, procesndose a lo ms un nico smbolo de la entrada. Puede definirse
recursivamente de la siguiente manera: 10
Para todo estado q, q clausura-(q).

TECNOLGICO DE ESTUDIOS SUPERIORES DE


CUAUTITLN IZCALLI
Cdigo: FO-205P11000-XX
FORMATO DE ENTREGA
DE EVIDENCIAS
Pgina 8de17

Dados dos estados p y r, si p clausura-(q) y r (p,), entonces r clausura-(q).


El algoritmo para eliminar las transiciones vacas es el siguiente:

AFND inicial

AFD caso particular de la conversin

Se calcula la clausura- del estado inicial, formndose un conjunto A que corresponder al estado
inicial del nuevo autmata.
Para cada smbolo del alfabeto, se verifican los estados alcanzables a partir de algn estado
contenido en A, y se calcula la clausura- de dichos estados alcanzables. Si dichas clausuras
producen nuevos conjuntos distintos de A, estos sern nuevos estados a los que se acceder a partir
de A y del smbolo correspondiente.
Se repite lo anterior para cada nuevo conjunto, hasta que no existan transiciones posibles para
ningn smbolo del alfabeto.
Ejemplo
Eliminacin de las transiciones vacas de un AFND-.
AFND- inicial.
AFND- inicial.
En este caso se obtiene un AFD, que es un caso particular de AFND.

TECNOLGICO DE ESTUDIOS SUPERIORES DE


CUAUTITLN IZCALLI
Cdigo: FO-205P11000-XX
FORMATO DE ENTREGA
DE EVIDENCIAS
Pgina 9de17

En este caso se obtiene un AFD, que es un caso particular de AFND.


En el ejemplo de la figura, se tendr inicialmente:
Clausura- (1) = {1,2,3,4,6} = A
Para A:
Para el smbolo a: 4 va a 5, y clausura-(5) = {5,7} = B.
Para el smbolo b: no existen transiciones posibles.
Para B:
Para el smbolo a: no existen transiciones posibles.
Para el smbolo b: 5 va a 6, y clausura-(6) = {6} = C.
Para C:
Para el smbolo a: no existen transiciones posibles.
Para el smbolo b: no existen transiciones posibles.
Con esto concluye el algoritmo y se obtiene el autmata de la figura.
En algunos casos puede ocurrir que al quitar las transiciones psilon obtengamos directamente un
AFD, pues la nica razn de no-determinismo era justamente la presencia de dichas transiciones.
Conversin de un AFND a un AFD.
AFND inicial.
AFND inicial.
Proceso de conversin.
Proceso de conversin.
AFD final.
AFD final.
Todo AFND (QN, , q0, N, FN) puede convertirse en un AFD (QD, , q0, D, FD) equivalente, que
mantiene el alfabeto y el estado inicial q0 originales. La conversin implica pasar por un AFD

TECNOLGICO DE ESTUDIOS SUPERIORES DE


CUAUTITLN IZCALLI
Cdigo: FO-205P11000-XX
FORMATO DE ENTREGA
DE EVIDENCIAS
Pgina 10de17

intermedio con estados y transiciones redundantes, que al no ser accesibles a partir del estado
inicial, son eliminados para obtener el AFD definitivo.
Para definir el AFD intermedio, se deben seguir los siguientes pasos:
Primero se redefine el conjunto de estados QN = {q0, q1, ..., qm} original, como uno conformado por
todos los subconjuntos de QN. Los nuevos estados finales sern todos aquellos estados que
contengan a alguno de los estados finales originales.
Posteriormente, se redefine el conjunto de transiciones original, por transiciones del tipo D(S,a),
donde a, y S es la unin de todos los estados q de QN para los cuales exista la transicin
N(q,a).
Por ltimo, se eliminan los estados inaccesibles o inalcanzables (junto con sus transiciones de
salida), es decir, aquellos a los que no se puede acceder a partir del estado inicial. Luego de esta
depuracin, se obtiene el AFD final.
Ejemplo
En las figuras de ejemplo, como el AFND inicial posee tres estados (q0, q1, q2), entonces el AFD
intermedio poseer siete ({q0}, {q1}, {q2}, {q0, q1}, {q0, q2}, {q1, q2}, {q0, q1, q2}), y como el estado
final original era q2, entonces los estados finales del AFD intermedio son {q2}, {q0, q2}, {q1, q2} y
{q0, q1, q2}. Con respecto a las nuevas transiciones, note por ejemplo que se mantuvo la transicin
N(q0,1)=q0, siendo ahora llamada D({q0},1)={q0}; sin embargo, dado que originalmente se daba
que N(q0,0)=q0 y N(q0,0)=q1, ahora estas dos transiciones fueron reemplazadas por
D({q0},0)={q0, q1}. Para terminar, note que los estados {q1}, {q2} y {q1, q2} no estn conectados
con el resto del autmata que posee el estado inicial; por tanto, son eliminados. Asimismo es
eliminado tambin {q0, q1, q2}, pues a pesar de estar conectado con el resto del autmata, no es

TECNOLGICO DE ESTUDIOS SUPERIORES DE


CUAUTITLN IZCALLI
Cdigo: FO-205P11000-XX
FORMATO DE ENTREGA
DE EVIDENCIAS
Pgina 11de17

accesible a partir de {q0}. As finalmente, eliminando estos cuatro estados, as como sus respectivas
transiciones, se obtiene el AFD buscado.

3.4 Representacin de expresin regular usando autmatas finitos no deterministas (ERAFND)


ERs, AFDs y AFNDs son mecanismos equivalentes para denotar los lenguajes regulares. En estas
tres secciones demostraremos esto mediante convertir ER AFND AFD ER. Las dos primeras
conversiones son muy relevantes en la prctica, pues permiten construir verificadores o buscadores
eficientes a partir de ERs.

Definicin
La funcin Th convierte ERs en AFNDs segn las siguientes reglas.
Prueba

TECNOLGICO DE ESTUDIOS SUPERIORES DE


CUAUTITLN IZCALLI
Cdigo: FO-205P11000-XX
FORMATO DE ENTREGA
DE EVIDENCIAS
Pgina 12de17

Es fcil verificarlo por inspeccin y aplicando induccin estructural. La nica parte que puede causar
problemas es la clausura de Kleene, donde otros esquemas alternativos que podran sugerirse (por
ejemplo M = (K1, , 1 {(f1, , s1), (s1, , f1)}, s1, {f1}) tienen el problema de permitir terminar un
recorrido de Th(E1) antes de tiempo. Por ejemplo el ejemplo que acabamos de dar, aplicado sobre
E1 = a b, reconocera la cadena x = aa.

Representacin de la expresin regular

Existen algoritmos que relacionan la especificacin de tokens -expresiones regulares-, con el


reconocimiento de estos -autmatas finitos-. Es posible dada una expresin regular obtener el AFD
que reconozca las cadenas del lenguaje denotado por la expresin regular. Tambin es posible
obtener el AFND que reconozca el lenguaje representado por dicha expresin regular. El algoritmo
que permite construir el autmata finito determinstico est fuera del alcance de estas notas ( el
alumno no tiene los prerrequisitos para su estudio en este curso). Sin embargo, el algoritmo utilizado
para la construccin del autmata finito no determinstico AFND, es relativamente sencillo de aplicar,
ya que se basa en reglas simples. Existen muchas variantes de este algoritmo denominado
Algoritmo de Thompson.

TECNOLGICO DE ESTUDIOS SUPERIORES DE


CUAUTITLN IZCALLI
Cdigo: FO-205P11000-XX
FORMATO DE ENTREGA
DE EVIDENCIAS
Pgina 13de17

Este algoritmo es dirigido por sintaxis, es decir, usa la estructura sintctica de la expresin regular
para guiar el proceso de construccin del autmata AFND. Supongamos que N(s)y N(t)son AFNDs
para las expresiones regulares sy t, respectivamente.
a) Para la expresin regular s | t(alternancia), construir el siguiente AFND, N(s|t) :

b) Para la expresin regular st(concatenacin), construir el AFND, N(st) :

c) Para la expresin regular s*, construir el AFND, N(s*) :

TECNOLGICO DE ESTUDIOS SUPERIORES DE


CUAUTITLN IZCALLI
Cdigo: FO-205P11000-XX
FORMATO DE ENTREGA
DE EVIDENCIAS
Pgina 14de17

3.5 Minimizacin de estados de autmata finito (AF).


Dos estados de un autmata finito determinista son estados equivalentes si al unirse en un slo
estado, pueden reconocer el mismo lenguaje regular que si estuviesen separados. Esta unin de
estados implica la unin tanto de sus transiciones de entrada como de salida. Si dos estados n o son
equivalentes, se di ce que son estados distinguibles. Un estado final con un estado no- final nunca
sern equivalentes.
Un AFD est minimizado, si todos sus estados son distinguibles y alcanzables. Un algoritmo de
minimizacin de AFD es el siguiente:
1. Eliminar los estados inaccesibles es del autmata.
2. Construir una tabla con todos los pares (p, q) de estados restantes.
3. Marcar en la tabla aquellas entradas donde un estado es final y el otro es no-final, es decir,
aquellos pares de estados que son claramente distinguibles.
4. Para cada par (p, q) y cada smbolo a del alfabeto, tal que
r = (p,a) y s = (q,a):
Si (r, s) ya ha sido marcado, entonces p y q tambin son distinguibles, por lo tanto marcar la entrada
(p, q). 2.
De lo contrario, colocar (p, q) en una lista asociada a la entrada (r, s).
5.-Agrupar los pares de estados no marcados.
Luego del tercer paso, si la tabla creada queda completamente marcada, entonces el AFD inicial ya
era mnimo. La complejidad computacional del problema de minimizar u n AFD es polinomio. De
hecho, existen algoritmos ms eficientes an que el mostrado en este artculo (aunque menos
intuitivos). Sin embargo, el problema de minimizar un autmata finito no determinista es NPcompleto y PSPACE- completo.

TECNOLGICO DE ESTUDIOS SUPERIORES DE


CUAUTITLN IZCALLI
Cdigo: FO-205P11000-XX
FORMATO DE ENTREGA
DE EVIDENCIAS
Pgina 15de17

3.6 Aplicaciones (Definicin de un caso de estudio)


Construccin del vehculo evasor de obstculos.
Uno de los primeros trabajos que comenzaron a formalizar la dinmica de robots mviles es
(Crowley, 1989) en el que se utilizan dispositivos ultrasnicos en el vehculo para su
posicionamiento y orientacin. En (Maes, 1990) se muestra un estudio del comportamiento de robots
autnomos y se divide en construccin de mapas, exploracin, transitar y evasin de obstculos. En
(Seng, 1997) se plantea como una de las mayores problemticas de la navegacin robtica la
localizacin y se proponen los pasos claves para el diseo, calibracin y modelado de autmatas.
Hay otros autores que refuerzan la evasin de objetos o desarrollo de trayectorias mediante tcnicas
de navegacin como son: navegacin inercial, compases magnticos y triangulacin. (Borenstein,
1997). (Betke, 1997) considera que el autmata puede reconocer marcas especificas en el medio por
el cual se desplaza usando reconocimiento de patrones visuales. La localizacin robtica as como la
evasin de obstculos del autmata, ha llegado a ser uno de los problemas fundamentales en los
robots mviles, y por ello, en (Fox, 1999) se presenta una versin de la localizacin Markov, en
donde la idea principal es mantener una densidad de probabilidad sobre el espacio de todas las
localizaciones posibles de un robot en su entorno.
El Vehculo Evasor de Obstculos (VEO de aqu en adelante) obtiene informacin del medio por el
cual transita a travs de unos fotodiodos y unas fotorresistencias que actan como sensores, estos
sensores arrojan como resultado niveles de voltaje que varan en proporcin directa con la
proximidad al obstculo, los niveles de voltaje despus de pasar por un comparador de niveles se
convierten en niveles digitales, los cuales determinan una direccin especifica al actuar como
entradas en el bus de direcciones de una memoria RAM, la cual se ha cargado con un programa,
que contiene instrucciones precisas para lograr la evasin de obstculos, estas instrucciones que

TECNOLGICO DE ESTUDIOS SUPERIORES DE


CUAUTITLN IZCALLI
Cdigo: FO-205P11000-XX
FORMATO DE ENTREGA
DE EVIDENCIAS
Pgina 16de17

provienen del bus de datos de la memoria RAM, controlan directamente 2 dispositivos


transistorizados conocidos como puentes H, los cuales interactan directamente con los motores de
direccin del vehculo, indicndoles la accin de giro y por tanto ejecutando los diferentes
movimientos para los cuales se dise VEO.
Es necesario por tal motivo presentar el programa que se carg en la memoria RAM segn
(Catlogo, 2010), lo cual representa el punto de partida para definir el alfabeto que se emplea para la
descripcin de la dinmica de VEO a travs de autmatas finitos. En la figura 5 se puede observar la
apariencia fsica del vehculo evasor de obstculos.
Figura 5. Vehculo Evasor de Obstculos (VEO).

La forma en que se encuentran distribuidos los cuatro sensores en el vehculo se puede apreciar en
la figura 2, donde cada uno de los sensores establece un bit en el bus de direcciones de la memoria
RAM, teniendo por consecuencia 2 direcciones definidas en la memoria. El sensor 4 establece el
primer bit de izquierda a derecha en el bus de direcciones, es decir el bit menos significativo, el
sensor 3 establece el segundo bit, el sensor 2 el tercer bit, y el sensor 1 el cuarto bit, es decir el ms
significativo.
Cabe mencionar que bajo ninguna presencia de obstculo los sensores arrojan de manera
permanente un bit en estado 0 hacia el bus de direcciones de la memoria, pero con la presencia de

TECNOLGICO DE ESTUDIOS SUPERIORES DE


CUAUTITLN IZCALLI
Cdigo: FO-205P11000-XX
FORMATO DE ENTREGA
DE EVIDENCIAS
Pgina 17de17

un obstculo, estos arrojan un bit en estado 1. La presencia de un obstculo en el sensor 1 arrojara


como resultado la secuencia de bits 1000 por ejemplo (ver figura 5).

REFERENCIAS BIBLIOGRAFICAS.
M. Alfonseca, J. Sancho, M. Martnez Orga. Teora de Lenguajes, Gramticas y Autmatas,
Ediciones Universidad y Cultura, 1990.
P. Isasi, P. Martnez, D. Borrajo. Lenguajes, gramticas y autmatas. Un enfoque prctico, AddisonWesley, 1997.
J.E. Hopcroft, R. Motwani, J.D. Ullman. Introduccin a la Teora de Autmatas, Lenguajes y
Computacin, 2 edicin, Addison-Wesley Iberoamericana, 2002.
P. Linz. An Introduction to Formal Languages and Automata, Jones and Barlett Publishers, 1997.
J.G. Brookshear. Teora de la computacin, lenguajes formales, autmatas y complejidad, AddisonWesley Iberoamericana, 1993.

You might also like