Está en la página 1de 4
TAC260-41 UNIVERSIDAD DE LAS AMERICAS ESCUELA DE TECNOLOGIAS NOMBRE: MIGUEL TUPIZA TEMA: EXPLICACION DE LA MAQUINA DE TURING FECHA: 26-Agosto-2010 LA MAQUINA DE ALAN TURING © Historia: El concepto de Maquina de Turing fue introducido por Alan Turing en el trabajo On computable ‘numbers, with an application to the Entscheidungsproblem, en el cual se estudiaba la cuestién planteada por David Hilbert sobre silas matematicas son decidibles, es decir, si hay un método definido que pueda aplicarse a cualquier sentencia matematicay que nos diga si esa sentencia es certa o no. Turing ide6 un modelo formal de computador, la maquina de Turing, demostré que existian problemas que una ‘maquina no podia resolver. Con este aparato extremadamente sencillo es posible realizar cualquier computo que un computador digital sea capaz de realizar Mediante este modelo teérico y el analisis de complejidad de algoritmos, fue posible la categorizacién de problemas computacionales de acuerdo a su comportamiento, apareciendo asi, el conjunto de problemas denominados P y NP, cuyas soluciones en tiempo polinémico son encontradas segin el determinismo y no determinismo respectivamente de la maquina de Turing, De hecho, se puede probar matematicamente que para cualquier programa de computadora es posible crear una maquina de Turing equivalente. Esta prueba resulta de la Tesis de Church-Turing, formulada por Alan Turing y Alonzo Church, de forma independiente a mediados del siglo XX. Laidea subyacente es el concepto de que una maquina de Turing es una persona ejecutando un procedimiento efectivo definido formalmente, donde el espacio de memoria de trabajo es ilimitado, pero en un momento determinado sélo una parte finita es accesible. © Descripcién ‘Una maquina de Turing es una "maquina de papel”, con un funcionamiento preciso, que cumple todos los requisitos del concepto de algoritmo, que son: 1. Lasinstrucciones son de "magnitud” finita (magnitud medida por ejemplo, en ntimero de simbolos necesarios para enunciar la regia) 2. Unoperador (humano o automatico) interpreta las instrucciones y realiza las operaciones. 3. Hay dispositivos (papel y lapiz, dispositivos mecénicos, memorias magnéticas, etc) para almacenar datos y efectuar operaciones. 4. Los procesos son discretos (aunque los objetos manipulados en los procesos puedan tener caracteristicas continuas). ¥ el n® de operaciones ha de ser finito 5. Laserie de instrucciones esta perfectamente determinada (es un proceso deterministico). £n las mismas condiciones y con los mismos datos, la aplicacién del algoritmo da los mismos resultados, El soporte de almacenamiento es una cinta de celdas tan grande como se quiera. En una celda se puede guardar cualquier caracter del alfabeto que maneja la maquina. Para introducir informacion y ‘manipularla existe una cabeza de Lectura/ESscritura que, en un instante dado, apunta a una tnica celda determinada, Las operaciones de transformacién de la informacién se realizan accediendo alas celdas y sustituyendo unos simbolos (caracteres del alfabeto) por otros. Para ello la maquina dispone de Instrucciones para desplazar la cabeza L/E a lo largo de la cinta en cualquiera de los dos sentidos y para reemplazar caracteres. La parte de la maquina distinta de la cinta y la cabeza L/E puede ser vista como tuna Unidad de Control con una serie de estados internos, por los que se puede ir pasando allo largo del tiempo. En un instante dado la maquina esta en un determinado estado, la cinta tiene una determinada configuracién y la cabeza L/E apunta a una determinada celda de la cinta ALGoRITMos TAC260-41 ‘© Funcionamiento. La maquina de Turing consta de un cabezal lector/escritor y una cinta infinita en la que el cabezal lee el contenido, borra el contenido anterior y escribe un nuevo valor. Las operaciones que se pueden realizar en esta maquina se limitan a: ‘© avanzar el cabezal lector/escritor hacia la derecha. © avanzar el cabezal lector/escritor hacia la izquierda, El cémputo es determinado a partir de una tabla de estados de la forma: (€stado, valor) —a(Nuevo estado, nueve valor, direcci6n) Esta tabla toma como parémetros el estado actual de la maquina y el cardcterleido de la cinta, dando la direccién para mover el cabezal, el nuevo estado de la maquina y el valor a ser escrito en la cinta, La memoria sera la cinta la cual se divide en espacios de trabajo denominados celdas, donde se pueden escribir leer simbolos. Inicialmente todas las celdas contienen un simbolo especial denominado “blanco” Las instrucciones que determinan el funcionamiento de la maquina tienen la forma, “si estamos en el estado x leyendo la posicién y, donde hay escrito el simbolo 2, entonces este simbolo debe ser reemplazado por este otro simbolo, y pasar a leer la celda siguiente, bien ala izquierda o bien a la derecha”. La maquina de Turing puede considerarse como un autémata capar de reconocer lenguajes formales. En ese sentido es capaz de reconocer los lenguajes recursivamente enumerables, de acuerdo a lajerarquia de Chomsky. Su potencia es, por tanto, superior a otros tipos de autématas, como el ‘autémata fnito, o el autémata con pila, 9 igual a otros modelos con la misma potencia computacional omefo]sTofsJofo[s] \ aber fcorfeaior Visualizacién de una Maquina de Turing, en la que se ve el cabezal y la cinta que se lee © Diferen s entre la maquina de Turing y la computadora: Aparte de la capacidad de memoria, las diferencias entre una MT y una computadora de estructura Von Neumann son: En cuanto a estados: En una MT el n? de estados depende del algoritmo. En una computadora, un estado viene representado por el contenido de la memoria, y una situacién por un estado y un puntero a una direccién (la que contiene ala instruccién que va a ejecutarse). La ejecucién de la instruccién pasa ala maquina a otro estado y la variable de enlace adopta otro argumento (la ALGoRITMos TAC260-41 direccién siguiente sila instruccin no era de bifurcacién y la maquina es secuencial natural). En cuanto ‘a memoria: En una MT la memoria es la cinta de E/S mas el "soporte fisico” de los estados de la UC.Y ya sabemos cémo se pasa de una situacién a otra: ai sr aj m sl. Programa en una MT es la secuencia de quintuplas que hay que seguir para hacer el célculo. EI mismo algoritmo, expresado en lenguaje- ‘maquina “tipo” para una computadora "tipo", o sea, programa en lenguaje maquina, es algo distinto que la secuencia de quintuplas. Y se debe ala marcada diferencia entre n-upla e instruccién. Para formalizar el concepto de programa en lenguaje maquina no es, pues, buen modelo una MT. En cuanto al orden de ejecucién de lasinstrucciones: En la estructura Von Neumann el secuenciamiento lo marca el orden de colocacién de las instrucciones en la memoria interna y viene asegurado por el contador de programa. En una MT el orden de ejecucién lo marca en todo instante el estado de la maquina y el caracter de la cinta apuntado, que son los dos datos que determinan la quintupla que ha de ser elecutada, ‘© Bibliografia: hhttp://campusvirtual.unex.es/cala/epistemowikia/index phptitle=La_m%C3%Alquina_de_Alan_Turing, hhttp://es wikipedia org/wiki/MP6C3%Alquina_de Turing ALGoRITMos

También podría gustarte