Maquina de Turing

10
MAQUINA DE TURING Presentado por: CARLOS ENRIQUE MAYORGA ZAMORA COD: 083251092010 UNIVERSIDAD DEL TOLIMA INGENIERIA DE SISTEMAS

description

maquina de turing en el trabajo de la inteligencia artificial

Transcript of Maquina de Turing

Page 1: Maquina de Turing

MAQUINA DE TURING

Presentado por:

CARLOS ENRIQUE MAYORGA ZAMORACOD: 083251092010

UNIVERSIDAD DEL TOLIMA INGENIERIA DE SISTEMAS

CREAD IBAGUE 2015

Page 2: Maquina de Turing

INTRODUCCION

Una máquina de Turing (MT) es un modelo computacional que realiza una lectura/escritura de manera automática sobre una entrada llamada cinta, generando una salida en esta misma.

Las máquinas de Turing fueron propuestas por primera vez por Alan Turing, en un intento para dar una definición matemática precisa de algoritmo o procedimiento mecánico. Los primeros trabajos de Turing y Alonzo Church abrieron la rama de la lógica matemática, que eventualmente se convertiría en la Teoría de Funciones Recursivas.

Page 3: Maquina de Turing

MÁQUINA DE TURING RESUMEN ANALITICO

La máquina de Turing es un modelo computacional introducido por Alan Turing. se estudiaba la cuestión planteada por David Hilbert sobre si las matemáticas son decidibles, es decir, si hay un método definido que pueda aplicarse a cualquier sentencia matemática y que nos diga si esa sentencia es cierta o no. Turing ideó un modelo formal de computador, la máquina de Turing, y demostró que existían problemas que una máquina no podía resolver.

La máquina de Turing posee una cabeza que puede emplearse para leer y escribir símbolos en la cinta de la máquina. Así, puede rastrear los datos de la cinta y modificar las celdas que desee sin alterar las demás. Por eso, una máquina de Turing puede estar en movimiento indefinidamente. La máquina 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 máquina 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:

(estado, valor) (nuevo estado, nuevo valor, dirección) Esta tabla toma como parámetros el estado actual de la máquina y el carácter leído de la cinta, dando la dirección para mover el cabezal, el nuevo estado de la máquina y el valor a ser escrito en la cinta.

Mediante este modelo teórico y el análisis de complejidad de algoritmos, fue posible la categorización de problemas computacionales de acuerdo a su comportamiento, apareciendo así, el conjunto de problemas denominados P y

Page 4: Maquina de Turing

NP*, cuyas soluciones en tiempo polinómico son encontradas según el determinismo y no determinismo respectivamente de la máquina de Turing. De hecho, se puede probar matemáticamente que para cualquier programa de computadora es posible crear una máquina de Turing equivalente.

{P Y NP*: En computación, cuando el tiempo de ejecución de un algoritmo (mediante el cual se obtiene una solución al problema) es menor que un cierto valor calculado a partir del número de variables implicadas (generalmente variables de entrada) usando una fórmula polinómica, se dice que dicho problema se puede resolver en un tiempo polinómico. La clase de complejidad de los problemas de decisión que pueden ser resueltos en tiempo polinómico calculado a partir de la entrada por una máquina de Turing determinista es llamada P. Cuando se trata de una máquina de Turing no-determinista, la clase se llama NP.

La idea subyacente es el concepto de que una máquina de Turing es una máquina 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. La memoria se divide en espacios de trabajo denominados celdas, donde se pueden escribir y leer símbolos. Inicialmente todas las celdas contienen un símbolo especial denominado “blanco”. Las instrucciones que determinan el funcionamiento de la máquina tienen la forma, “si estamos en el estado x leyendo la posición y, donde hay escrito el símbolo z, entonces este símbolo debe ser reemplazado por este otro símbolo, y pasar a leer la celda siguiente, bien a la izquierda o bien a la derecha”. La máquina de Turing puede considerarse como un autómata capaz de reconocer lenguajes formales. En ese sentido es capaz de reconocer los lenguajes recursivamente e numerables, de acuerdo a la jerarquía de Chomsky. Su potencia es, por tanto, superior a otros tipos de autómatas, como el autómata finito, o el autómata con pila, o igual a otros modelos con la misma potencia computacional.

La cinta de entrada es una secuencia infinita de celdas. En cada celda de la cinta solo se puede almacenar un símbolo. Las celdas que no están ocupadas, están vacías, las vamos a denotar por el carácter # (símbolo en blanco).

Existen diversas "variedades" de una máquina de Turing, pero la más simple puede ser descrita diciendo que es cualquier dispositivo que cumple las siguientes condiciones:

* Tiene una cinta sobre la que puede desplazarse a izquierda y derecha un cabezal de lectura/escritura.  La cinta contiene una serie de celdas, y en cada una de ellas puede escribirse un símbolo de un conjunto finito;  este conjunto de símbolos se denomina el alfabeto de la máquina.  En principio todas las celdas que no se hayan escrito antes contienen un carácter especial nulo o vacío (que se

Page 5: Maquina de Turing

representa por 0 o #).  La cinta puede contener tantas celdas a derecha e izquierda del cabezal como sean necesarias para el funcionamiento de la máquina.

* El cabezal puede moverse a derecha (R) a izquierda (L) de su posición actual, así como leer el contenido de una celda o escribir en ella cualquier carácter de su alfabeto.

Existe un registro de estado que almacena el estado de la máquina.  El número de estados posibles es finito, y no se exige ningún estado especial con el que sea iniciada la máquina.

Existe una tabla de acción, que contiene las instrucciones de lo que hará el autómata.  Estas instrucciones representan en cierta forma el "programa" de la máquina.  La ejecución de cada instrucción de la tabla de acción incluye cuatro pasos: 

1. Leer un carácter en la posición actual.2. Escribir un nuevo símbolo en esta posición (puede ser el mismo que

había).  El símbolo a escribir es alguno del alfabeto de la máquina, y depende del carácter leído y del estado actual.

3. Desplazar el cabezal una celda a derecha o izquierda (R/L);  en algunos modelos el desplazamiento puede ser nulo (detener H).

4. Decidir cuál será el nuevo estado en función del carácter que se acaba de leer y del estado actual.  Si la tabla de acción no contiene ninguna correspondencia con el estado actual y el símbolo leído, entonces la máquina detiene su funcionamiento.

Nota: algunos teóricos sostienen que la genuina máquina de Turing solo utiliza un alfabeto unario, mientras que una máquina de estados finitos es más general y puede utilizar un alfabeto con más símbolos.

Al comenzar a funcionar, la máquina se encuentra en el estado S1 y su cabeza lectora está en la posición 1 de la cinta.

En cada instante la máquina se encuentra en un estado S y su cabeza lectora está en una posición P. Si el símbolo en la posición P es a y (q, a) = (q0, b, X),Entonces:

* La máquina escribe el símbolo b en la posición P de la cinta.

* Cambia de estado desde S a S0.

Page 6: Maquina de Turing

* Mueve la cabeza lectora a la posición p − 1 si X = I, y a la posición p + 1 si X = D. Si X = N, entonces la cabeza lectora permanece en la posición p.

Es significativo que la cinta puede extenderse indefinidamente a derecha e izquierda, lo que hace que en la práctica sea imposible construir un modelo real de lo que se denomina un sistema de Turing completo. Es también destacable que la máquina da a la cinta tres utilizaciones distintas:

a) Como elemento de almacenamiento de los datos de entrada (de capacidad potencialmente ilimitada)

b) Como elemento de salida (de cualquier cantidad de datos)

c) Como almacenamiento de información intermedia durante el proceso (puede ser de cualquier tamaño).

Aunque tanto el alfabeto utilizado como el número de estados son finitos, lo que confiere su potencia a la máquina de Turing es su almacenamiento ilimitado.  Turing probó que este autómata es también un computador universal.  Es decir, que puede emular el comportamiento de cualquier dispositivo cuyo comportamiento pueda ser expresado simbólicamente mediante un algoritmo.

CONCLUSIONES

Page 7: Maquina de Turing

Gracias a las máquinas de Turing podemos hoy en día tener computadoras ya que fue una de las personas importantes en el teorema de la computación.

Una Máquina de Turing, o MT, se considerar una cinta infinita dividida en casillas, cada una de las cuales contiene un símbolo, y sobre la cual actúa un dispositivo que puede adoptar diversos estados, y que lee un símbolo de la casilla sobre la que está situado. En función de dicho símbolo y del estado actual, se pueden realizar tres acciones siguientes: pasa a un nuevo estado, imprime un símbolo en lugar del que acaba de leer y se desplaza a una posición hacia la izquierda, derecha, o se detiene.

Turing estudio acerca de la relatividad, la mecánica cuántica y matemática en general, sin embargo su fuerte fue la probabilidad, descubrió de forma independiente el teorema de límite central y ya luego se encausaría en fabricar su máquina.

Turing sentó las bases actuales para la computación permitiendo un avance estructurado en el crecimiento del conocimiento en esta área.

Al desarrollarse en campos como la inteligencia artificial hizo que las personas relacionadas con el ámbito computacional se interesaran en hacer la computación un tema Ubicuo en donde las máquinas sean tan inteligentes que permitan servir a la humanidad sin ser percibidas.

La máquina de Turing fue una abstracción matemática que revolucionó la forma en cómo se “computaban” los datos.