32
 Lenguajes y  Autómatas I UNIDAD III: Autómatas Finitos UNIDAD IV: Máquina de Turing José Del Carmen Méndez Candelaria Ingeniería en Sistemas Computacional es 6º Semestre Grupo C Profesor: I.S.C: Rosemberg López Jiménez

Unidad III y IV Lenguajes y Automatas i

Embed Size (px)

Citation preview

  • Lenguajes y

    Autmatas I UNIDAD III: Autmatas Finitos

    UNIDAD IV: Mquina de Turing

    Jos Del Carmen Mndez Candelaria

    Ingeniera en Sistemas Computacionales

    6 Semestre

    Grupo C

    Profesor:

    I.S.C: Rosemberg Lpez

    Jimnez

  • Libertad de espritu en ciencia y tecnologa

    Ingeniera en Sistemas Computacionales 1

    Contenido INTRODUCCIN .................................................................................................................................. 2

    UNIDAD III AUTOMATAS FINITOS ................................................................................................ 3

    3.1 Definicin formal ............................................................................................................................... 4

    3.2 Clasificacin de AF ........................................................................................................................... 5

    3.3 Conversin de un AFND a AFD ....................................................................................................... 9

    3.4 Representacin de ER usando AFND ............................................................................................. 11

    3.5 Minimizacin de estados en un AF ................................................................................................. 13

    3.6 Aplicaciones (definicin de un caso de estudio) .............................................................................. 14

    UNIDAD IV MAQUINA DE TURING .............................................................................................. 19

    Adentrndose a la Historia de la MT .................................................................................................... 20

    4.1 Definicin formal MT 4 ............................................................................................................... 20

    4.2 Construccin modular de una MT ............................................................................................... 23

    4.3 Lenguajes aceptados por la MT. ................................................................................................. 25

    CONCLUSIN ..................................................................................................................................... 28

    BIBLIOGRAFA AF ........................................................................................................................... 29

    BIBLIOGRAFIA MT .......................................................................................................................... 30

  • Libertad de espritu en ciencia y tecnologa

    Ingeniera en Sistemas Computacionales 2

    INTRODUCCIN

    En el siguiente escrito se abordarn temas a cerca de los autmatas finitos y subtemas de la 3

    unidad del plan de estudios de la materia LENGUAJES Y AUTOMATAS I; donde se aprender

    y conocer la importancia del estudio de los autmatas dentro de los procesos de desarrollo de

    software, y algunas aplicaciones.

    Partiendo del conocimiento de sus comportamientos, aspectos y caractersticas ms relevantes

    de estos autmatas. Los autmatas son esencialmente importantes en las actividades sociales,

    ya que se encuentran dentro de todo tipo de maquinaria y aplicaciones desarrolladas, donde estas

    tienen las funcionalidades especficas con las que realizan sus operaciones y actividades;

    adems de sus comportamientos, caractersticas y funcionalidad que tienden los autmatas se

    detallara cmo influyen en la vida social y real de los ser humanos.

    Los autmatas finitos, son antes de todos logsticas matemticas, en las que se realizan

    operaciones en cada estado de los eventos, estos eventos pueden ser de un solo estado o varios;

    al tener acciones con estados de dos o ms eventos, los autmatas finitos tienden a cambiar de

    finitos determinsticos a no determinsticos.

    Dentro de estas hojas se denotan las esquematizaciones de los nuevos autmatas finitos:

    Determinsticos

    No Determinsticos

    Se conocern su estructuras, funcionalidades y comportamientos entre estos dos tipos de

    autmatas, dentro de ello se abarcara las conversiones o transformaciones entre estos autmatas.

    Como breve definicin 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.

    En la seccin de la MT, se conocer deforma formal que es una mquina de Turing y sus

    componentes; adems de ello se detallara de forma explcita algunos conceptos sobre su

    desarrollo y formacin.

    La mquina de Turing es un dispositivo capaz de establecer los problemas intratables, para

    conocer si es resolutorio o no. Tales confirmaciones se deben y se detallan de cada proceso u

    problemas matemticos de la vida real.

    Al igual que los AF la mquina de Turing utiliza estructuras, transiciones y formas de

    conformacin para la representacin de los modelos matemticos, de situacin en las que se

    desea conocer si estos tienen soluciones, ya que un computador no puede definir dicha

    confirmacin, ya que es un proceso tardado.

  • Libertad de espritu en ciencia y tecnologa

    Ingeniera en Sistemas Computacionales 3

    UNIDAD III AUTOMATAS

    FINITOS

  • Libertad de espritu en ciencia y tecnologa

    Ingeniera en Sistemas Computacionales 4

    3.1 Definicin formal

    Definicin 1

    El Autmata Finito es la mquina ms restrictiva de todas y desde luego que se puede definir

    como un caso particular de una MT. Tambin podemos verla como un AP sin pila. Obviamente

    que al sacarle la pila lo nico que queda es la cinta finita de entrada. Este modelo matemtico

    abstracto representa la solucin del problema de aceptacin de lenguajes de tipo 3 o LR. 3.1a

    Definicin 2

    Son mquinas formales que se usan para reconocer lenguajes regulares. Lenguajes ms

    sencillos, los lenguajes que son generados por gramticas regulares.

    Con ello se deduce que un autmata finito es; una mquina con un nmero finito de estados

    que lee smbolos de una cinta de entrada infinita. El comportamiento de la mquina est

    determinado nicamente por el estado en que se encuentra y el smbolo en la cinta de

    entrada. Al leer un smbolo de la cinta de entrada cambia de estado y avanza en la cinta de

    entrada. Cuando ya no quedan smbolos por leer, se detiene. Aun cuando la cinta es infinita,

    la cadena que gua el comportamiento del autmata no lo es. Esta cadena puede ser tan larga

    como se quiera, pero siempre finita. 3.1b

    Definicin 3

    Un autmata finito tiene un conjunto de estados y su control pasa de un estado a otro en

    respuesta a las entradas externas. Una de las diferencias fundamentales entre las clases de

    autmatas finitos es si dicho control es determinista, lo que quiere decir que el autmata no

    puede encontrarse en ms de un estado a un mismo tiempo, o no determinista, lo que significa

    que s puede estar en varios estados a la vez.3.1c

    Un autmata finito es un vector de tres elementos M = (I,S,, F)donde I es el conjunto finito de

    entradas, S es el conjunto finito de estados (no vaco), es la funcin de transicin de estados

    y F es el conjunto finito de estados finales (incluidos en S).3.1d

    Un autmata es una representacin grfica que muestra el proceso de reconocimiento de una

    cadena de entrada. La simbologa utilizada es simple: 3.1e

    Diagrama Descripcin

    Un crculo representa un estado n, donde n es un nmero natural o bien

    una letra, generalmente.

    Un arco representa la lectura de un smbolo a en la entrada. Transicin

    entre estados.

    Estado de inicio s. Es generalmente 0 (cero).

  • Libertad de espritu en ciencia y tecnologa

    Ingeniera en Sistemas Computacionales 5

    Estado de aceptacin f.

    3.2 Clasificacin de AF

    Un AF tiene un conjunto de estados y su control se mueve de estado en estado, en respuesta a

    entradas externas. Estas entradas forman las cadenas a ser analizadas. Los estados de un AF,

    son de tres tipos: estado inicial, que permite empezar la ejecucin del autmata; estados finales

    o estados de aceptacin que permiten realizar la salida de aceptacin de la cadena de entrada

    en el caso de que no haya ms smbolos en la entrada, y estados intermedios, que son los que

    permiten pasar del estado inicial a algn estado final.

    Los AF se dividen en diversas clases, dependiendo de si su control es determinista

    (lo que significa que el autmata no puede estar en ms de un estado simultneamente)

    o no determinista (lo que significa que el autmata puede estar en varios estados al mismo

    tiempo).3.2

    Los autmatas finitos se pueden clasificar en funcin del tipo de control como:

    Deterministas, el autmata nicamente puede estar en un estado en un momento

    determinado.

    No Deterministas, el autmata puede estar en varios estados simultneamente.

    Ambos definen los mismos lenguajes (regulares), sin embargo los No deterministas permiten

    describir ms eficientemente determinados problemas.3.2a

    Para conocer ms afondo sobre los autmatas finitos determinsticos y no determinsticos, a

    continuacin se detallara de forma breve cada uno de estos autmatas; ya que es necesario para

    poder entender y comprender el siguiente tema de conversiones de un autmata finito no

    determinstico a un autmata finito determinstico.

    Definiciones de autmatas finitos no determinsticos y determinsticos.

    Autmata finito determinstico (AFD); es aquel que siempre est en un solo estado despus

    de leer cualquier secuencia de entradas; la palabra determinista nos dice que para cada entrada

    existe un nico estado al que el autmata puede llegar partiendo del estado actual; comencemos

    dando la definicin formal. El autmata finito determinista. El trmino determinista hace

    referencia al hecho de que, para cada entrada, existe un nico estado al que el autmata

    pueda llegar partiendo del estado actual.

  • Libertad de espritu en ciencia y tecnologa

    Ingeniera en Sistemas Computacionales 6

    Un AFD genera un solo tipo de salida: acepta o no una secuencia de smbolos de entrada. Esa

    aceptacin est representada si el autmata se encuentra en algn estado del conjunto F. El

    comportamiento de un AFD, comienza en el estado inicial (q0), y segn se van recibiendo los

    smbolos de la entrada transita entre los estados (del conjunto Q), de acuerdo a la funcin de

    transicin f. Si en un determinado momento se encuentra en un estado de aceptacin

    (del conjunto F), reconoce como vlida la cadena formada por los smbolos de entrada ledos

    hasta el momento. Si no, no es aceptada.

    Fig. 1. AFD. Representacin de un autmata finito

    determinstico

    Definicin Un Autmata Finito Determinstico (AFD) es una quntupla: M = (Q;; q 0; f; F ),

    donde

    Q Es un conjunto nito no vaco (los elementos de Q son llamados estados)

    es un conjunto de smbolos de entrada al que llamaremos alfabeto.

    q1 Q, es un estado al que llamaremos estado inicial. f Es una funcin Q x Q que se llama funcin de transicin; esta recibe como argumentos un estado y una entrada y devuelve un estado.

    q F Q es un conjunto de estados a los cuales llamaremos estados finales o de aceptacin.

    Existen dos notaciones preferibles para describir los autmatas:

    1. Un diagrama de transiciones, que es un grafo.

    2. Una tabla de transiciones, que es una enumeracin tabular (tabla) de la funcin f, que a la

    vez describe el conjunto de estados, y el alfabeto de entrada.

    Diagramas de transiciones

    Un diagrama de transiciones para un AFD A = (, Q, q0, f, F), es un grafo definido

    de la siguiente forma:

    a) Hay un nodo para cada estado de Q.

  • Libertad de espritu en ciencia y tecnologa

    Ingeniera en Sistemas Computacionales 7

    b) El nodo correspondiente al estado inicial q0, tendr una flecha sin origen (o arco entrante)

    no etiquetado.

    c) Los nodos correspondientes a los estados de aceptacin (los que pertenecen a F) estn

    marcados con un doble crculo. Los que no pertenecen a F tienen un crculo simple.

    d) Habr un arco etiquetado con a entre el nodo p y el nodo q, si f(p,a) = q. Si existen varios

    smbolos de entrada que provocan una transicin del estado p a q, entonces el arco entre p y q

    puede estar etiquetado con la lista de esos smbolos.3.2.a

    Un autmata puede ser representado mediante un grafo dirigido (digrafo) el cual se conoce como

    diagrama de transiciones, donde los vrtices del mismo corresponden a los estados del autmata,

    en el caso del estado inicial este tendr una flecha que apunta hacia l, y los estados finales se

    representaran mediante un circulo con lnea doble; si existe una transicin del estado q al p sobre

    la entrada a entonces existe un arco con etiqueta a que va del estado q al estado p en el diagrama

    de transicin. El autmata acepta una cadena si la secuencia de transiciones correspondientes a los smbolos de conducen del estado inicial a un estado final. 3.2b

    Si se modifica el modelo del autmata finito, para permitirle ninguna, una o ms transiciones de

    un estado sobre el mismo smbolo de entrada, al nuevo modelo lo conoceremos como autmata

    finito no determinstico. Tiene la capacidad de estar en varios estados simultneamente.

    La diferencia entre AFD y un AFN est en la funcin de transicin. Para el AFN, f es una funcin

    que toma como argumentos un estado y un smbolo de entrada, pero devuelve un conjunto de

    cero, uno o ms estados (en vez de devolver un estado, como en el caso del AFD).

    Definicin: Un Autmata Finito No Determinstico (AFND) es una quntupla M = (Q; ; I; R;

    F ), donde

    Q es un conjunto de estados

    es un alfabeto.

    I Q es un conjunto de estados a los cuales llamaremos estados iniciales. R es una relacin sobre Q Q que se llama relacin de transicin. F Q es un conjunto de estados a los cuales llamaremos estados finales.

  • Libertad de espritu en ciencia y tecnologa

    Ingeniera en Sistemas Computacionales 8

    Fig. 2 AFND: representacin de autmatas finitos no

    determinsticos

    Tabla de transiciones

    Una tabla de transiciones es una representacin tabular convencional de una funcin como f,

    que recibe dos argumentos y devuelve un valor. Esta tabla tendr las siguientes

    caractersticas: 3.2c

    a) En las filas estarn los estados q Q

    b) El estado inicial se preceder del smbolo ->

    c) Cada estado final se preceder del smbolo *

    d) En las columnas estarn los smbolos de entrada a

    e) El valor correspondiente a la fila del estado qy a la entrada aes el estado que determine f(q,a)

    Fig. 3 Ejemplo de tabla de transiciones

  • Libertad de espritu en ciencia y tecnologa

    Ingeniera en Sistemas Computacionales 9

    3.3 Conversin de un AFND a AFD

    Fig. 4 autmata finito no determinista

    Se observa que el AFN de la Figura 1, tiene dos transiciones desde el estado 0 con la entrada

    a; es decir, puede ir al estado 0 o al 1.

    Ahora se introduce un algoritmo para construir a partir de un AFND un AFD que reconozca el

    mismo lenguaje. Este algoritmo se le conoce como construccin de subconjuntos, es til para

    simular un AFND por medio de un programa de computador.

    Construccin de subconjuntos. Construccin de un AFD a partir de un AFN.

    Entrada. Un AFN N.

    Salida. Un AFD D que acepta el mismo lenguaje.

    Mtodo. El algoritmo construye una tabla de transiciones tranD para D. Cada estado del AFD

    es un conjunto de estados del AFN y se construye tranD de modo que D simular en paralelo

    todos los posibles movimientos que N puede realizar con una determinada cadena de entrada.

    Se utilizan las operaciones del Cuadro 2, para localizar los conjuntos de los estados del AFN

    (s representa un estado del AFN, y T, un conjunto de estados del AFN). Antes de detectar

    el primer smbolo de entrada, N se puede encontrar en cualquiera de los estados del conjunto

    cerradura-?(s0), donde s0 es el estado de inicio de K. Supngase que exactamente los estados

    del conjunto T son alcanzables desde s0 con una secuencia dada de smbolos de entrada, y sea

  • Libertad de espritu en ciencia y tecnologa

    Ingeniera en Sistemas Computacionales 10

    a el siguiente smbolo de entrada. Al ver a, N puede trasladarse a cualquiera de los estados del

    conjunto mover (T, a). Cuando se permiten transiciones- ? , N puede encontrarse en cualquiera

    de los estados de cerradura-? (T, a), despus de ver la a. Se construyen estados D; el

    conjunto de estados de D; y tranD, la tabla de transiciones de D, de la siguiente forma.

    Cada estado de D corresponde a un conjunto de estados de AFN en los que podra estar N

    despus de leer alguna secuencia de smbolos de entrada, incluidas todas las posibles

    transiciones- ? anteriores o posteriores a la lectura de smbolos. El estado de inicio de Des

    cerradura-? (s0). Se aaden los estados y las transiciones a D. Un estado de D es un estado

    de aceptacin si es un conjunto de estados de AFN que contenga al menos un estado de

    aceptacin de N.

    El clculo de cerradura-? (T) es un proceso tpico de bsqueda en un grafo de nodos alcanzables

    desde un conjunto dado de nodos. En este caso, los estados de T son el conjunto dado de

    nodos, y el grafo est compuesto solamente por las aristas del AFN etiquetadas por ? . Un

    algoritmo sencillo para calcular cerradura-? (T) utiliza una estructura de datos tipo pila para

    guardar estados en cuyas aristas no se hayan buscado transiciones etiquetadas con ? .

    Implementacin de los algoritmos para convertir un AFN en un AFD

    Para la implementacin de estos algoritmos se utiliza el AFN N. Que acepta el lenguaje

    (a|b)*abb. Se aplica el Algoritmo 2. Construccin de subconjuntos a N. El estado de inicio

    del AFD equivalente es cerradura-? (0), que es A = {0,1,2,4,7}, puesto que estos son alcanzados

    desde el estado 0 por un camino en que todas las aristas estn etiquetadas por ? . El alfabeto de

    smbolos de entrada es {a, b}. Ahora el algoritmo indica que debe marcarse A y despus

    calcular cerradura- ? (mover(A, a)).

    Calculando primero mover(A, a), el conjunto de estados de N que tiene transiciones en a

    desde miembros de A. Entre los estados 0,1,2,4 y 7 slo 2 y 7 tienen dichas transiciones, a 3

    y a 8, de modo que:

    cerradura- ? (mover({0,1,2,4,7}, a)) =cerradura- ? (3,8) = {1,2,3,4,6,7,8}

    Este conjunto se denominar B. As, tranD[A, a] = B. Se presenta el clculo de la cerradura-

    ? . Entre los estados de A, slo 4 tienen una transicin en b a 5, de modo que el AFD tiene

    una transicin en b desde A a.

    cerradura- ? (A, b)

    cerradura- ? (mover(A, b)) =cerradura- ? ({5})

    cerradura- ? ({5}) = {1,2,4,5,6,7}

    Por lo que, tranD[A, b] = C. Es decir; C = {1,2,4,5,6,7} Se contina este proceso con los

    conjuntos B y C, ahora sin marcar, finalmente se llegar al punto en que todos los conjuntos que

    son del estado AFD estn marcados.3.3

  • Libertad de espritu en ciencia y tecnologa

    Ingeniera en Sistemas Computacionales 11

    3.4 Representacin de ER usando AFND

    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.3.4

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

    Prueba: 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.

  • Libertad de espritu en ciencia y tecnologa

    Ingeniera en Sistemas Computacionales 12

    Representacin de la expresin regular

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

    el reconocimiento de stos -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.

    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) :

  • Libertad de espritu en ciencia y tecnologa

    Ingeniera en Sistemas Computacionales 13

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

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

    3.5 Minimizacin de estados en un 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.3.5

    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):

    1. 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 NP- completo y PSPACE- completo.

  • Libertad de espritu en ciencia y tecnologa

    Ingeniera en Sistemas Computacionales 14

    3.6 Aplicaciones (definicin de un caso de estudio)

    Construccin del vehculo evasor de obstculos 3.6

    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 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 diseo VEO. Es necesario por tal

    motivo presentar el programa que se cargo 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).

  • Libertad de espritu en ciencia y tecnologa

    Ingeniera en Sistemas Computacionales 15

    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 24direcciones 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 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).

    En cada una de las direcciones de la memoria RAM determinadas por los sensores, existe una

    instruccin cargada que establece la direccin de giro del motor, despus de haber interactuado

    con el puente H transistorizado, el cual requiere de 2 bits de control (teniendo por tanto 4

    posibles entradas) para realizar 3 acciones bsicas que son: giro del motor hacia un sentido, giro

    hacia el lado contrario y permanencia esttica del motor. Estas acciones se ejemplifican con

    mayor claridad en la tabla 1.

    Tabla 1. Operacin del puente H y direcciones de giro de los motores.

    Entrada al Puente H

    (Bits de Control) Estado del Motor

    00 Permanencia esttica

    01 Giro hacia delante

    10 Giro hacia atrs

    11 Estado prohibido

    El VEO cuenta con 2 motores de direccin, cada uno de los cuales est controlado por un puente

    H de manera independiente. En la figura 6 se aprecia la distribucin de los motores en el

    vehculo, de donde se estableci el siguiente lineamiento de operacin: el motor derecho ser

    controlado por el puente H nmero 1, y el motor izquierdo ser controlado por el puente H

    nmero 2.

    Figura 6. Distribucin de motores de VEO

    (Vista trasera del vehculo).

    Teniendo por consecuencia la distribucin de bits provenientes del bus de datos de la memoria

    RAM, segn lo muestra la tabla 2.

  • Libertad de espritu en ciencia y tecnologa

    Ingeniera en Sistemas Computacionales 16

    Tabla 2. Programa cargado en la memoria RAM de VEO.

    Entradas

    (Sensores)

    Alfabeto

    Entradas

    al puente

    H

    Accin

    evasora

    Entradas

    (Sensores)

    Alfabeto

    Entradas

    al puente

    H

    Accin

    evasora

    0000 a 0101 A 1000 i 1000 E

    0001 b 0001 C 1001 j 0110 G

    0010 c 0111 D 1010 k 0110 G

    0011 d 0101 A 1011 l 0110 G

    0100 e 0010 F 1100 m 1010 B

    0101 f 0110 G 1101 n 0110 G

    0110 g 0110 G 1110 0110 G

    0111 h 0110 G 1111 o 0110 G

    Las acciones evasoras mencionadas en la tabla 2, se describen en la tabla 3.

    Tabla 3. Descripcin de acciones evasoras del VEO.

    Accin

    Evasora Significado Descripcin de la accin Estado

    A Avanzar hacia adelante Ambos motores giran hacia delante qo

    B Avanzar hacia atrs Ambos motores giran hacia atrs q1

    C Giro a la izquierda y

    hacia delante

    Motor derecho gira hacia adelante y motor

    izquierdo no gira q2

    D Giro a la derecha y hacia

    delante

    Motor izquierdo gira hacia adelante y motor

    derecho no gira q3

    E Giro a la izquierda y

    hacia atrs

    Motor izquierdo gira hacia atrs y motor derecho no

    gira q4

    F Giro a la derecha y hacia

    atrs

    Motor derecho gira hacia atrs y motor izquierdo no

    gira q5

    G Giro rpido El motor izquierdo gira hacia adelante y el motor

    derecho gira hacia atrs q6

    En la accin evasora A, la entrada para el autmata finito estar definida por y donde y puede

    tomar cualquiera de las dos posibles entradas que originan el estado A en el vehculo y que

    son: a y d. Mientras que en la accin evasora G, la entrada para el autmata finito estar definida

    por z donde z puede tomar cualquiera de las 9 posibles entradas que provienen de los sensores

    y que originan el estado G en el vehculo, que son: f, g, h, j, k, l, n, , o. Las estrategias C y D

    estn diseadas para evadir obstculos que se presenten en la parte trasera del vehculo, es decir

    cuando se presentan obstculos en los sensores 3 y 4. Las estrategias evasivas E y F estn

    diseadas para evitar obstculos que se presenten en la parte delantera del vehculo, es decir

    cuando se presentan obstculos en los sensores 1 y 2. En la figura 4(a) se resumen los

    movimientos anteriormente descritos.

  • Libertad de espritu en ciencia y tecnologa

    Ingeniera en Sistemas Computacionales 17

    Figura 4. Acciones evasoras del vehculo VEO.

    a) Estrategias evasivas

    b) Conjunto de trayectorias vlidas

    Antes de presentar el diagrama de transiciones que caracteriza la dinmica de VEO, es necesario

    establecer el conjunto de trayectorias posibles, lo cual lo hacemos con ayuda de una pequea

    retcula, que representa un plano bidimensional, la cual tiene un conjunto de obstculos a evadir,

    estos ltimos estn representados por cuadros negros en la figura 4(b); de donde se observa que

    el conjunto de acciones evasivas seran en forma ordenada: C, D, C, D, y que las entradas al

    sistema (VEO) que haran posible una trayectoria valida seran: b, c, b, c. Ntese que la

    permanencia en un estado no est definida como una trayectoria valida, por tanto dicho de otra

    forma una cadena definida por y,y,y b,b,b c,c,c d,d,d, etc. no es permitida por el autmata,

    pues en el diagrama de transicin presentado en una seccin posterior ni siquiera permite una

    transicin de estados.

    Un anlisis detallado a los estados posibles del vehculo y las trayectorias validas, y

    considerando lo establecido en la descripcin de las acciones evasoras, nos permite denotar de

    manera formal el autmata finito no determinstico correspondiente como sigue:

    M = (Q, , , q0, F) Donde Q = {q0, q1, q2, q3, q4, q5, q6,}.

    = {b, c, e, i, m, y, z}.

    F = {}.

    Donde se define a F como un elemento nulo, ya que como se aprecia en la tabla 3 el vehculo

    no tiene definido estados finales. De una observacin directa al autmata anteriormente

    planteado se distingue que el modelado descriptivo del vehculo se pudo realizar utilizando siete

    estados, despus de haber redefinido el alfabeto del autmata, este se compone de cinco

    entradas y finalmente el estado inicial se encuentra definido por un solo estado que esq0.

    Resultados

    El modelado de la trayectoria del vehculo VEO presentado en este artculo por medio de

    autmatas finitos no determinsticos result ser una valiosa herramienta para describir de

  • Libertad de espritu en ciencia y tecnologa

    Ingeniera en Sistemas Computacionales 18

    manera formal su dinmica, lo cual no representaba una tarea tan sencilla, pues VEO tiene bien

    definidos 7 posibles estados, lo cual complica un poco su entendimiento. Se puede notar por

    inspeccin directa por parte del lector a travs de un anlisis al diagrama de transicin y a

    la funcin de transicin presentados en este trabajo en las figuras 7 y 8 respectivamente, que

    el siguiente estado del vehculo, con siete estados finitos y siete entradas conocidas, se puede

    estimar de una forma muy sencilla y concisa, lo cual represent uno de los retos primordiales

    de este trabajo.

    Figura 7. Diagrama de transiciones para el autmata

    finito no determinstico que describe la dinmica de

    VEO.

    Figura 8. Funcin de Transicin para el autmata finito no

    determinstico

  • Libertad de espritu en ciencia y tecnologa

    Ingeniera en Sistemas Computacionales 19

    UNIDAD IV MAQUINA DE

    TURING

  • Libertad de espritu en ciencia y tecnologa

    Ingeniera en Sistemas Computacionales 20

    Adentrndose a la Historia de la MT

    Poco de historia 4.0

    A finales del siglo XIX, el matemtico David Hilbert se pregunt si era posible encontrar un

    algoritmo para determinar la verdad o falsedad de cualquier proposicin matemtica. En

    particular, se preguntaba si existira un modo de determinar si cualquier frmula del clculo

    de predicados de primer orden, aplicado a enteros, es verdadera. Dado que el clculo de

    predicados de primer orden sobre los enteros es suficientemente potente como para expresar

    frases como esta gramtica es ambigua, si Hilbert hubiera tenido xito, existiran algoritmos

    para dichos problemas, que ahora sabemos que no existen esta proposicin se conoce con el

    nombre de problema de Hilbert.

    En 1963, Alan Mathinson Turing propuso la mquina que lleva su nombre como modelo de

    cualquier computacin posible. Este modelo se parece ms a una computadora que a un

    programa, aunque las verdaderas computadoras electrnicas, o incluso los electromecnicas,

    tardaron varios aos en ser construidas. La mquina de Turing consta de una unidad de control,

    que pueda estar en cualquier estado tomado de un conjunto infinito. Hay una cinta dividida en

    cuadrados o casillas, y cada casilla puede contener un smbolo, tomado de otro conjunto

    infinito. Inicialmente, se sita en la cinta de entrada, que es una cadena de smbolos de longitud

    infinita, elegidos del alfabeto de entrada. El resto de las casillas de la cinta, que se extiende

    infinitamente hacia la derecha y hacia la izquierda, contiene, inicialmente, un smbolo

    denominado espacio en blanco. El espacio en blanco es un smbolo de cinta, pero no un smbolo

    de entrada, y puede haber tambin otros smbolos de cinta adems de los smbolos de entrada

    y del espacio en blanco. Existe una cabeza de la cinta que siempre est situada sobre una de

    las casillas de la cinta. Se dice que la mquina de Turing est sealando dicha casilla. Al

    principio, la cabeza de la cinta se encuentra en la casilla de la entrada situada ms a la

    izquierda. Un movimiento de la mquina de Turing es una funcin del estado de la unidad de

    control y del smbolo de la cinta al que seala la cabeza.

    4.1 Definicin formal MT 4

    Definicin 1: 4.1

    Una Mquina de Turing es un modelo matemtico que consiste en un autmata capaz de

    implementar cualquier problema matemtico expresado por medio de un algoritmo. Alan

    Turing; fue un matemtico ingls que vivi durante la primera mitad del siglo XX. Aunque fue

    un matemtico brillante en muchos campos, destacando especialmente en criptografa, su

    principal inters se centraba en la lgica, que en aquellos momentos se encontraba en plena

    ebullicin gracias al intento de David Hilbert de hallar una formulacin de las matemticas sobre

    una base estricta de lgica formal. La Mquina de Turing, o Mquina de Computacin Lgica

    como la llamaba l, fue quizs la mayor aportacin de Alan Turing a esta tarea y con seguridad

  • Libertad de espritu en ciencia y tecnologa

    Ingeniera en Sistemas Computacionales 21

    su descubrimiento de mayor transcendencia, ya que abri el camino de la ciencia de la

    Computacin, que a su vez nos lleva al computador que en estos momentos estoy utilizando

    para escribir esto, o al que usted est usando para leerlo. En definitiva, Alan Turing fue uno de

    los cientficos ms importantes de la primera mitad del siglo XX y, sin duda, una de las mentes

    que ms influy en la manera actual que tenemos de ver el mundo e interactuar con l.

    Una Mquina de Turing es un modelo matemtico

    Modelo matemtico es una expresin de esas que se utilizan con cierta frecuencia pero que

    pocas veces nos paramos a pensar qu significa. Y aunque parezca algo complicado, en realidad

    se trata de un concepto bastante sencillo.

    Es un conjunto de reglas que encajan en la explicacin y resolucin de un problema, es decir,

    que modelizan una situacin concreta para poder explicarla y encontrar el modo de resolverla.

    Ms an, se podra decir que un modelo matemtico es un conjunto de reglas capaces de

    generalizar y resolver un problema matemtico concreto y cualquier otro de su misma

    naturaleza que se pueda plantear.

    Una mquina de Turing es un autmata

    En matemticas, un autmata es lo que se conoce como una mquina terica, es decir, un

    dispositivo cuyo funcionamiento se estudia sin necesidad de construirlo realmente. En concreto

    un autmata es una mquina terica que lee unas instrucciones en forma de smbolos y cambia

    de estado segn stas.

    Una mquina de Turing es un autmata que consta de una cabeza lectora y una cinta infinita en

    la que la cabeza puede leer smbolos, borrarlos, escribirlos y moverse a la derecha o a la

    izquierda. Por supuesto tambin consta de una funcin de estado que determinar los cambios

    de un estado a otro que se deben producir en funcin de las instrucciones que reciba.

    Fig.9 Mquina de Turing

  • Libertad de espritu en ciencia y tecnologa

    Ingeniera en Sistemas Computacionales 22

    Definicin 2:4.1a

    La Mquina de Turing (MT) es el modelo de autmata con mxima capacidad

    computacional: la unidad de control puede desplazarse a izquierda o derecha y sobre

    escribir smbolos en la cinta de entrada.

    Definicin formal: 4.1def

    Una Mquina de Turing MT es una sxtupla M = donde

    Q El conjunto finito de estados de la unidad de control.

    El conjunto finito de smbolos de entrada.

    El conjunto completo de smbolos de la cinta; siempre es un subconjunto de

    La funcin de transicin. Los argumentos de (q; X ) son un estado q y un smbolo de la cinta X . El valor de (q; X ), si esta es una tupla (p; Y; S ) donde

    1. p es el estado siguiente de Q

    2. Y es el smbolo de , que se escribe en la casilla sealada por la cabeza de la cinta y que sustituye al smbolo que se encontraba en dicha casilla.

    3. S es un sentido I o D (izquierda o derecha) que nos indica en qu sentido se mueve la cabeza

    q0

    Es el estado inicial.

    B Es el smbolo del espacio en blanco B , y aparecer inicialmente en todas las casillas de la cinta, menos en aquellas que contienen los smbolos de entrada

    F es el conjunto de estados finales o de aceptacin

    Definicin formal: 4.1def2

    Una Mquina de Turing (MT) es una tupla M = (K, , , s), donde

    K es un conjunto finito de estados, h K.

    es un alfabeto finito, # .

  • Libertad de espritu en ciencia y tecnologa

    Ingeniera en Sistemas Computacionales 23

    s K es el estado inicial

    , Es la funcin de

    transicin.

    4.2 Construccin modular de una MT

    Construccin definicin 1:4.2a

    Para describir formalmente lo que hace una mquina de Turing, es necesario desarrollar una

    notacin para describir sus configuraciones o descripciones instantneas, parecida a la notacin

    que se desarrolla para los autmatas a pila. En principio una mquina de Turing dispone de una

    cinta de longitud infinita, por lo cual podr suponerse que no es posible describir espticamente

    su configuracin. Sin embargo, despus de un nmero finito de movimientos, la mquina de

    Turing solo habr recorrido un nmero finito de casillas. Por tanto, para cualquier configuracin

    existe un prefijo y un sufijo infinito de casillas que no se han recorrido nunca. El contenido de

    dichas casillas debe Ser espacios en blanco o smbolos del conjunto finito de smbolos de

    entrada.

    Por lo tanto, en una configuracin solo se muestran las casillas que se encuentren entre el

    smbolo ms a la izquierda y el smbolo ms a la derecha de la cinta que no sean espacios en

    blanco, adems, habr que incluir un nmero finito de espacios en blanco en la configuracin,

    si se da la condicin especial de que la cabeza de la cinta seale a uno de los espacios en blanco

    situados antes o despus de la cadena de entrada.

    Adems de la representacin de la cinta, debe ser posible representar el estado de la unidad de

    control, as como la posicin de la cabeza de la cinta. Para ello, insertaremos el estado en la

    cinta, situndolo inmediatamente a la izquierda de la casilla sealada por la cabeza. Para que la

    cadena que representa el contenido de la cinta junto con el estado de la unidad de control no

    resulte ambigua, es necesario asegurarse de que no se utiliza como estado ningn smbolo que

    forme parte del conjunto de smbolos de cinta. Sin embargo, es sencillo cambiar los nombres de

    los estados de forma que no tengan nada en comn con los smbolos de la cinta, dado que la

    operacin de la mquina de Turing no depende de cmo se llamen sus estados. Por tanto,

    utilizaremos la cadena x1x2 ...xi1qxixi+1 ...xn para representar una configuracin en la que:

    1. q es el estado de la mquina de Turing.

    2. La cabeza de la cinta seala al i-ensimo smbolo a partir de la izquierda.

    3. x1x2...xn es la porcin de la cinta que se encuentra entre los smbolos no blancos situados ms a la izquierda y ms a la derecha. Como excepcin, si la cabeza seala a alguna

    casilla a la izquierda del smbolo no blanco que se encuentre ms a la izquierda, o a

  • Libertad de espritu en ciencia y tecnologa

    Ingeniera en Sistemas Computacionales 24

    alguna casilla a la derecha del smbolo no blanco que se encuentre ms a la derecha,

    entonces algunos caracteres prefijos o sufijos de x1x2 ...xn sern espacios en blanco,

    siendo i = 1 o i = n, respectivamente.

    Los movimientos de una mquina de Turing se describen utilizando la notacin 7M.

    Construccin definicin 2: 4.2b

    Mediante esta tcnica se puedan desarrollarse mquinas de Turing complejas a partir de bloques

    de elemental es a partir de mquinas ms pequeas mediaste diagramas de transiciones .La

    construccin de mquinas de Turing se lleva a cabo median te los diagramas de transicin y

    combinarlos de manera parecida a lo que se real i z a en la formacin de la unin y

    concatenacin de los autmatas finitos.

    - Construccin de mquinas de Turing complejas a partir de bloques elementales.

    - Transferencia de control entre mquinas: M1 M2

    - Transferencia de control con varios smbolos: M1 } M2 M3

    Construccin definicin 3: 4.2c

    En la notacin modular de MTs una MT se ver como un grafo, donde los nodos sern acciones

    y las aristas condiciones. En cada nodo se podr escribir una secuencia de acciones, que se

    ejecutan al llegar al nodo. Luego de ejecutarlas, se consideran las aristas que salen del nodo.

    Estas son, en principio, flechas rotuladas con smbolos de . Si la flecha que sale del nodo est

    rotulada con la letra que coincide con la que tenemos bajo el cabezal luego de ejecutar el nodo,

    entonces seguimos la flecha y llegamos a otro nodo. Nunca debe haber ms de una flecha

    aplicable a cada nodo. Permitiremos rotular las flechas con conjuntos de caracteres. Habr un

    nodo inicial, donde la MT comienza a operar, y cuando de un nodo no haya otro nodo adonde

    ir, la MT se detendr.

    Las acciones son realmente MTs. Comenzaremos con 2 + || acciones bsicas, que corresponden

    a las acciones que pueden escribirse en , y luego podremos usar cualquier MT que definamos

    como accin para componer otras.

    Las acciones bsicas de la notacin modular de MTs son:

    Moverse hacia la izquierda (): Esta es una MT que, pase lo que pase, se mueve hacia la

    izquierda una casilla y se detiene. = ({s},,,s), donde .

    (Notar que estamos sobrecargando el smbolo, pero no debera haber confusin.)

  • Libertad de espritu en ciencia y tecnologa

    Ingeniera en Sistemas Computacionales 25

    Moverse hacia la derecha (): Esta es una MT que, pase lo que pase, se mueve hacia la

    derecha una casilla y se detiene. = ({s},,,s), donde .

    Escribir el smbolo b (b): Esta es una MT que, pase lo que pase, escribe b en la cinta

    y se detiene. b = ({s},,,s), donde a , (s,a) = (h,b). Nuevamente, estamos

    sobrecargando el smbolo b para denotar una MT.

    Construccin definicin 4: 4.2d

    Mediante esta tcnica se puedan desarrollarse mquinas de Turing complejas a partir de bloques

    de elementales a partir de mquinas ms pequeas mediaste diagramas de transiciones.

    La construccin de mquinas de Turing se lleva a cabo mediante los diagramas de transicin y

    combinarlos de manera parecida a lo que se realiza en la formacin de la unin y concatenacin

    de los autmatas finitos.

    Pasos para la construccin de una mquina de Turing

    a) Elimine las caractersticas de inicio de los estados iniciales de las mquinas, excepto la de aquel donde iniciara la maquina compuesta.

    b) Elimine las caractersticas de detencin de los estados de parada de todas la maquinas e introduzca un nuevo estado de parada que no se encuentre en ninguno de los diagramas

    que se combinan.

    c) Para cada uno de los antiguos estados de parada p y cada x en y.

    4.3 Lenguajes aceptados por la MT.

    LAMT 4.3a

    Podremos decir que la forma en la que una mquina de Turing acepta una cadena es la siguiente:

    la cadena de entrada se sita en la cinta y la cabeza comienza sealando el smbolo de entrada

    que se encuentra ms a la izquierda; si la mquina de Turing llega a un estado de aceptacin al

    final del proceso, se considera que la cadena es reconocida, en caso contrario, decimos que la

    cadena no fue aceptada.

    De manera formal dada una mquina de Turing M = (Q,,,,q0,B,F), el lenguaje L(M) es el

    conjunto de cadenas de tales que q0 7 p para algn estado p del conjunto de estado

    finales F, y cualesquiera dos cadenas de cinta y . Los lenguajes que son pueden ser aceptados

    por la mquina de Turing reciben el nombre de lenguajes recursivamente enumrales o

    lenguajes RE.

  • Libertad de espritu en ciencia y tecnologa

    Ingeniera en Sistemas Computacionales 26

    Sin embargo este no es el nico mtodo para la aceptacin de una cadena, existe otro que

    comnmente se le conoce con el nombre de aceptacin por parada. Se dice que una mquina

    de Turing se para si alcanza un estado q cuando seala a un smbolo de la cinta X, sin que se

    produzca ningn movimiento en dicha situacin; es decir (q,X) no est definida. Siempre se

    puede suponer que una mquina de Turing se para si acepta, es decir sin introducir variaciones

    en el lenguaje aceptado, se puede hacer que (q,X) se quede sin definir siempre que q sea un

    estado de aceptacin. En general a menos que se especifique lo contrario, suponemos que una

    mquina de Turing siempre se para cundo esta en un estado de aceptacin, aunque no en todos

    los casos ocurre esto. Los lenguajes reconocidos por mquinas de Turing que siempre se paran,

    acepten o no, se les conoce con el nombre de recursivos. Las mquinas de Turing que siempre

    se paran con independencia de que acepten o no, son un buen modelo de algoritmo. Si existe un

    algoritmo para resolver un problema dado, entonces se dice que el problema es decidible, con

    lo cual se observa que las mquinas de Turing que siempre se paran, tienen un papel importante

    en la teora de la dicisibilidad.

    LAMT 4.3b

    Una mquina de Turing se puede comportar como un aceptador de un lenguaje. Si colocamos

    una cadena w en la cinta, situamos la cabeza de lectura/escritura sobre el smbolo del extremo

    izquierdo de la cadena w y ponemos en marcha la mquina a partir de su estado inicial.

    Entonces w es aceptada si, despus de una secuencia de movimientos, la mquina de Turing

    llega a un estado final y para. Por tanto w es aceptada. Si qw * w1pw2 para algn estado final

    p y unas cadenas w1 y w2.

    Entonces, se obtiene la siguiente definicin:

    Sea M = (Q, , , q0=q1, B, F, ) una mquina de Turing. Entonces el lenguaje aceptado por

    M es: L(M) = {w *q1w * w1pw2 para pF y wi*}.

    Los lenguajes formales que son aceptados por una mquina de Turing son exactamente aquellos

    que pueden ser generados por una gramtica formal. El clculo Lambda es una forma de definir

    funciones. Las funciones que pueden se computadas con el clculo Lambda son exactamente

    aquellas que pueden ser computadas con una mquina de Turing.

    Estos tres formalismos, las mquinas de Turing, los lenguajes formales y el clculo Lambda son

    formalismos muy dismiles y fueron desarrollados por diferentes personas. Sin embargo, ellos

    son todos equivalentes y tienen el mismo poder de expresin. Generalmente se toma esta notable

    coincidencia como evidencia de que la tesis de Church-Turing es cierta, que la afirmacin de

    que la nocin intuitiva de algoritmo o procedimiento efectivo de cmputo corresponde a la

    nocin de cmputo en una mquina de Turing.

    Gramticas estructuradas por frases:

  • Libertad de espritu en ciencia y tecnologa

    Ingeniera en Sistemas Computacionales 27

    Parte izquierda de las reglas: combinacin de smbolos terminales y no terminales,

    con al menos un no terminal.

    Parte derecha de las reglas: combinacin de smbolos terminales y no terminales de cualquier

    longitud (incluso 0).

    - Las mquinas de Turing aceptan lenguajes estructurados por frases.

  • Libertad de espritu en ciencia y tecnologa

    Ingeniera en Sistemas Computacionales 28

    CONCLUSIN

    Verdaderamente influyen los autmatas en la vida social y real?

    Cmo ayuda la mquina de Turing en la vida de los programadores?

    Son preguntas que resonaban en mi mente al comienzo del estudio de los autmatas; ahora al

    tener los conocimientos respectivos se puede deducir y responder

    Los autmatas as como la mquina de Turing, son elementales no solo en la resolucin de

    problemas indefinibles o intratables; ya que estos ayudan a los ingenieros en programacin a

    usarlos como una metodologa de anlisis y diseo en la resolucin de dicho problema, estos

    pueden ser definido de forma sencilla o tediosa.

    Estos algoritmos matemticos ayudan a la resolucin de problemas del mundo real, con la

    diferencia que estos tienden a hacer tratados ms detalladamente, unos que otros. Estos

    autmatas y mquinas de Turing han venido a facilitar y ayudar al programador como al ser

    humano en las tomas de decisiones en cuanto a problemas de la vida cotidiana.

    Ya que en casos particulares se tiende a llegar al desbordamiento de ideas en cuanto al anlisis

    y diseo de respuestas a un suceso en particular de la vida diaria, adems de ello los autmatas

    y MT ayudan en la estandarizacin de las mquinas electrnicas para poder entrar de un estado

    a otro; es decir, que estas pueden llegar a pensar que decisin tomar, cuando estn sometidas o

    se encuentren en una situacin dada en un contexto en especial.

    El estudio de estas algebras matemticas, al pasar los aos ayudaran en la creacin de muchos

    elementos electrnicos, que facilitaran la vida de la especie humana en la adaptacin de los

    cambios informticos. Los cuales fortalecern el crecimiento de muchos continentes al

    desarrollo del nuevo mundo.

    Las herramientas de soluciones de problemas y respuestas en cuanto a su solucin podemos

    utilizar los grafos y tablas de transiciones de los AF y MT; para conocer el tiempo de ejecucin

    y el tiempo en que se puede tardar para encontrar la posible solucin.

    En conclusin se detalla en pocas palabras, que los autmatas y las mquinas de Turing

    son herramientas muy sencillas y a la vez efectivas, como metodologas para las soluciones de

    problemas; interpretadas de forma matemtica u Grafrica (grafo), que ayudan al personaje a la

    interpretacin de los resultados, son ambiguos, sencillo, factible y ptimo.

    Auto, auto, automatzate para conocer el funcionamiento de lo que

    te rodea y como piensan.

  • Libertad de espritu en ciencia y tecnologa

    Ingeniera en Sistemas Computacionales 29

    BIBLIOGRAFA AF

    3.1a: LENGUAJES REGULARES Y

    AUTOMATAS FINITOS/U.T.N. F.R.T. /S. y S.

    de los L./ING. JORGE BUABUD

    http://www.slideshare.net/jbuabud/lenguajes-

    regulares-y-autmatas-finitos-clase-7

    3.1b: CAPTULO 3/AUTMATAS DE

    ESTADOS FINITOS/S.Takahashi

    3.1c: TEORA DE AUTMATAS,

    LENGUAJES Y COMPUTACIN/John E.

    Hopcroft, Rajeev Motwani, Jeffrey D.

    Ullman/PEARSON ADDISON WESLY

    3.1d: TEMA II: INTRODUCCIN A LA

    TEORA DE AUTMATAS FINITOS/1.

    INTRODUCCION. DEFINICION

    3.1e: ING. FCO. ROS

    ACOSTA/[email protected]/

    AUTMATAS FINITOS

    3.2 SINTAXIS Y SEMNTICA DEL

    LENGUAJE UTN FRSF APUNTE NRO.

    2/AUTMATAS FINITO

    3.2a AUTMATAS FINITOS

    DETERMINSTICOS AFD/ CUADERNILLO

    DE APUNTES TEORA DE LA

    COMPUTACIN/ MAGALY GONZLEZ

    MOTA/30 DE JUNIO DE 2010

    3.2.a SINTAXIS Y SEMNTICA DEL

    LENGUAJE UTN FRSF APUNTENRO.

    2/AUTMATAS FINITOS

    3.2.b TEMA 4. AUTMATAS

    FINITOS/CLASIFICACIN DE UN AF

    http://www.uhu.es/francisco.moreno/talf/docs/t

    ema4_2.pdf

    3.2c SINTAXIS Y SEMNTICA DEL

    LENGUAJE UTN FRSF APUNTENRO.

    2/AUTMATAS FINITOS/2009

    3.3 CONVERSIN DE UN AFN A UN

    AFD/EDGAR RUIZ L., EDUARDO RAFFO

    L./DOCENTE DEL DEPARTAMENTO DE

    INGENIERA DE SISTEMAS E

    INFORMTICA./FACULTAD DE

    INGENIERA INDUSTRIAL, UNMSM E-

    MAIL: [email protected]/

    DOCENTE DEL DEPARTAMENTO DE

    INGENIERA DE SISTEMAS E

    INFORMTICA./FACULTAD DE

    INGENIERA INDUSTRIAL, UNMSM E-

    MAIL: [email protected]

    /AUTMATAS FINITOS

    3.4 CONVERSION DE ER A AFND/CAP. 2

    LENGUAJES REGULARES/ TEORIA DE LA

    COMPUTACION/(LENGUAJES

    FORMALES, COMPUTABILIDAD Y

    COMPLEJIDAD)/APUNTES Y

    EJERCICIOS/GONZALO

    NAVARRO/DEPARTAMENTO DE

    CIENCIAS DE LA

    COMPUTACION/UNIVERSIDAD DE CHILE

    Blog de autmatas finitos...

    http://automatas-finitos.blogspot.mx/

    Autmatas Finitos

    http://www.monografias.com/trabajos-

    pdf/automatas-finitos/automatas-finitos.pdf

    Autmatas Finitos/Ral Jimnez

    http://www.uhu.es/raul.jimenez/DIGITAL_II/d

    ig2_ii.pdf7

    Definiciones de autmatas finitos

    http://trevinca.ei.uvigo.es/~formella/doc/talf09/

    talf.pdf

  • Libertad de espritu en ciencia y tecnologa

    Ingeniera en Sistemas Computacionales 30

    Tema 2_automatas finitos

    http://quegrande.org/apuntes/ETIS-

    USC/1/TALF1/teoria/07-08/tema_2_-

    _automatas_finitos.pdf

    Conversin AFND a AFD

    http://sisbib.unmsm.edu.pe/bibvirtualdata/publi

    caciones/indata/vol6_n1/pdf/conversion.pdf

    3.5 Y 3. 6 (HOPCROFT,1997) HOPCROFT J. E.

    Y ULLMAN J. D.; INTRODUCCIN A LA

    TEORA DE AUTMATAS, LENGUAJES

    Y COMPUTACIN,

    COMPAA EDITORIAL CONTINENTAL, S.A.

    DE C.V., MXICO (1997).

    (BROOKSHEAR,1989) BROOKSHEAR J.

    G.; TEORA

    DE LA COMPUTACIN, ADDISON WESLEY

    IBEROAMERICANA, MEXICO (1989).

    (CROWLEY,1989) CROWLEY J.; WORLD

    MODELING AND POSITION ESTIMATION

    FOR A MOBILE ROBOT USING ULTRASONIC

    RANGING. IEEE CONFERENCE ON

    ROBOTICS AND AUTOMATION, ICRA

    89, VOL. 3, 1574-1579 (1989).

    (MAES,1990) MAES P. Y BROOKS R.

    A.;LEARNING TO COORDINATE

    BEHAVIORS. MASSACHUSETTS INSTITUTE

    OF TECHNOLOGY,1-7 (1990).

    (SENG,1997) SENG K. Y KLEEMAN L.;

    ACCURATE ODOMETRY AND

    ERROR MODELLING FOR A MOBILE

    ROBOT. IEEE INTERNATIONAL

    CONFERENCE ON ROBOTICS AND

    AUTOMATION, 2783-2788 (1997).

    (BORENSTEIN,1997) BORENSTEIN J., EVERETT

    H. R., FENG L. Y WEHE D.; MOBILE ROBOT

    POSITIONING SENSORS AND

    TECHNIQUES. JOURNAL OF ROBOTIC

    SYSTEMS, SPECIAL ISSUE ON MOBILE

    ROBOTS. VOL. 14 [4], 231 249 (1997).

    (BETKE,1997) BETKE M. Y GURVITS L.;

    MOBILE ROBOT LOCALIZATION USING

    LANDMARKS. IEEE TRANSACTIONS ON

    ROBOTICS AND AUTOMATION, VOL. 13 [2],

    135-142, (1997)

    (FOX,1999) FOX D., BURGARD W.

    Y THRUN S.;MARKOV LOCALIZATION FOR

    MOBILE ROBOTS IN DYNAMICS

    ENVIRONMENTS. JOURNAL OF

    ARTIFICIAL INTELLIGENCE RESEARCH VOL.

    11 391-427 (1999)

    (CATLOGO,2010) CATALOGO

    ELECTRNICO DE CIRCUITOS

    INTEGRADOS DATASHEET (2010).

    HTTP://WWW.DATASHEET4U.COM/

    BIBLIOGRAFIA MT

    4 http://teodelacomp.blogspot.mx/2011/03/41-

    definicion-formal-de-una-maquina.html

    4.0 DEFINICIN DE UNA MQUINA DE

    TURING/CUADERNILLO DE APUNTES TEORA DE

    LA COMPUTACIN/MAGALY GONZLEZ

    MOTA/30 DE JUNIO DE 2010

    4.1 PUBLICADO JAVIER ORIBE EN EL

    MQUINA DE TURING/EL MAQUINA DE TURING

    HTTP://ELMAQUINADETURING.WORDPRESS.C

    OM/2009/12/15/%C2%BFQUE-ES-UNA-

    MAQUINA-DE-TURING-I/

    http://elmaquinadeturing.wordpress.com/200

    9/12/16/%C2%BFque-es-una-maquina-de-

    turing-ii/

    4.1a LOURDES QUIROZ HERNANDEZ/TEORIA DE

    LA COMPUTACION/INSTITUTO TECNOLOGICO

    SUPERIOR DE SAN MARTIN TEXMELUCAN

  • Libertad de espritu en ciencia y tecnologa

    Ingeniera en Sistemas Computacionales 31

    4.1def DEFINICIN DE UNA MQUINA DE

    TURING/CUADERNILLO DE APUNTES TEORA DE

    LA COMPUTACIN/MAGALY GONZLEZ

    MOTA/30 DE JUNIO DE 2010

    4.1def2 TEORIA DE LA

    COMPUTACION/(LENGUAJES FORMALES,

    COMPUTABILIDAD Y COMPLEJIDAD)/APUNTES Y

    EJERCICIOS/GONZALO

    NAVARRO/DEPARTAMENTO DE CIENCIAS DE LA

    COMPUTACION/UNIVERSIDAD DE CHILE

    4.2a CONSTRUCCIN MODULAR DE UNA

    MT/CUADERNILLO DE APUNTES TEORA DE LA

    COMPUTACIN/MAGALY GONZLEZ MOTA/30

    DE JUNIO DE 2010

    4.2b LOURDES QUIROZ HERNANDEZ/TEORIA DE

    LA COMPUTACION/INSTITUTO TECNOLOGICO

    SUPERIOR DE SAN MARTIN TEXMELUCAN

    4.2c TEORIA DE LA COMPUTACION/(LENGUAJES

    FORMALES, COMPUTABILIDAD Y

    COMPLEJIDAD)/APUNTES Y

    EJERCICIOS/GONZALO

    NAVARRO/DEPARTAMENTO DE CIENCIAS DE LA

    COMPUTACION/UNIVERSIDAD DE CHILE

    4.2d MAQUINA DE TURING/ CONSTRUCCIN

    MODULAR DE LAS MAQUINAS DE TURING/

    SBADO, 20 DE NOVIEMBRE DE 2010

    http://maquinadeturingunad.blogspot.mx/2010

    /11/construccion-modular-de-las-maquinas-

    de.html

    4.3a DEFINICIN DE UNA MQUINA DE

    TURING/CUADERNILLO DE APUNTES TEORA DE

    LA COMPUTACIN/MAGALY GONZLEZ

    MOTA/30 DE JUNIO DE 2010

    4.3b INSTITUTO TECNOLGICO DE

    MINATITLN/ PEA GARCA

    EVELIA/05231149/5/Semestre/TEORA DE LA

    COMPUTACIN/MC. JOS NGEL TOLEDO

    LVAREZ/ESTADO DEL ARTE DE LA MQUINA

    DE TURING