13
UNIVERSIDAD FERMÍN TORO VICERRECTORADO ACADÉMICO FACULTAD DE INGENIERÍA CABUDARE – EDO. LARA Web Quest Integrantes Reny Galaviz CI: 19.105.449 Prof: Edecio Freitez

Reny Galaviz Web Quest

Embed Size (px)

Citation preview

Page 1: Reny Galaviz Web Quest

UNIVERSIDAD FERMÍN TOROVICERRECTORADO ACADÉMICO

FACULTAD DE INGENIERÍACABUDARE – EDO. LARA

Web Quest

Integrantes Reny Galaviz

CI: 19.105.449 Prof:

Edecio Freitez

Cabudare, Julio 2015

Introducción

Page 2: Reny Galaviz Web Quest

En ciencias de la computación, una máquina universal de Turing (UTM) es una máquina de Turing que puede simular una máquina de Turing arbitraria en la entrada arbitraria. La máquina universal esencialmente logra esto mediante la lectura de tanto la descripción de la maquina a ser simulada como también la entrada misma de su propia cinta. Alan Turing introdujo esta máquina en 1936-1937. Este modelo es considerado por algunos(por ejemplo,Martin Davis(2000)) el origen del computador de programa almacenado. Usado por Johon von Neumann(1946) para el “instrumento de computación electrónica” que ahora lleva el nombre de von Neumann: la arquitectura de von Neuman. Es también conocida como la máquina de computación, maquina universal.En términos de complejidad, una máquina universal de Turing de múltiple cinta solo necesita ser más lenta por un factor logarítmico, comparada con las máquinas que simula.

Toda máquina de Turing computa una cierta función parcial computable fija desde las cadenas de entrada sobre su alfabeto. En ese sentido se comporta como un computador con un programa fijo. Sin embargo, la tabla de acción, de cualquier máquina de Turing, puede ser codificada en una cadena. Asi, se pude construir una máquina de Turing que espera en su cinta una cadena describiendo la tabla de acción (de otra máquina de Turing), seguida de una cadena que describe la cinta de entrada (de la otra máquina), y luego computa la cinta que la máquina de Turing codificada habría computado. Turinn descubrió tal construcción en completo detalle en su papel de 1936.

“es posible inventar una única máquina que puede ser usada para computar cualquier secuencia computable. Si esta máquina U es provista con una cinta en el principio de que esta escrito el S.D [“ Descripcion estándar” de una tabla de acción] de alguna maquina de computación M, entonces U computara la misma secuencia que M”.

Tarea

Que es y cómo funciona

Page 3: Reny Galaviz Web Quest

Es un dispositivo de reconocimientos de lenguaje, es más general que cualquier autómata finito y cualquier autómata de pila, debido a que ellas pueden reconocer tanto los lenguajes regulares, como los lenguajes independientes de con texto y además muchos otros tipos de lenguajes.

La máquina de Turing(abreviado MT) tiene, un control finito, una cabeza lectora y una cinta donde puede haber caracteres, y donde eventualmente viene la palabra de entrada. La cinta es de longitud infinita hacia la derecha, hacia donde se extiende indefinidamente, llenándose los espacios con el carácter blanco (que representaremos con “t”). La cinta no es infinita hacia la izquierda, por lo que hay un cuadro de la cinta que es el extremo izquierdo, la MT la cabeza lectora es de lectura y escritura, por lo que la cinta puede ser modificada en curso de ejecución. Además, en la MT la cabeza se mueve bidireccionalmente (izquierda y derecha), por lo que puede pasar repetidas veces sobre un mismo segmento de la cinta.

Este modelo está conformado por un alfabeto de entrada y uno de salida, un símbolo especial llamado blanco (normalmente b, Δ o 0), un conjunto de estados finitos y un conjunto de transiciones entre dicho sestados. Su funcionamiento se basa en una función de transición, que recibe un estado inicial y una cadena de caracteres (la cinta, la cual es finita por la izquierda) pertenecientes al alfabeto de entrada. Luego va leyendo una celda de la cinta, borrando el símbolo, escribir el nuevo símbolo perteneciente al alfabeto de salida y finalmente avanza a la izquierda o a la derecha (solo una celda a la vez), repitiendo esto según se indique en la función de transición, para finalmente detenerse en un estado final o de aceptación, representando así la salida.

Proceso

Cómo funciona una maquina de turing? 

Una maquina de Turinges un dispositivo que transforma un INPUT en un OUTPUT después de algunos pasos. Tanto el INPUT como el OUPUT constan de números en código binario (ceros y unos).En su versión original la máquina de Turing consiste en una cinta infinitamente larga con unos y ceros que pasa a través de una caja. La caja es tan fina que solo el trozo de cinta que ocupa un bit (0 ó 1) está en su interior. La máquina tiene una serie de estados internos finitos que también se pueden numerar en binario.

Para llevar a cabo algún algoritmo, la maquina se inicializa en algún estado interno arbitrario. A continuación, se pone en marcha y la máquina lee el bit que se encuentra en ese momento en su interior y ejecuta alguna operación con ese bit(lo cambia o no, dependiendo de su estado interno).Después se mueve hacia la derecha o hacia la izquierda, y vuelve a procesar el siguiente bit de la misma manera. Al final se para, dejando el resultado al lado izquierdo por ejemplo.

Page 4: Reny Galaviz Web Quest

Una instrucción típica podría ser : 01 11011i

La traducción es como sigue: si la máquina se encuentra en el estado interno 0 y lee 1 en la cinta, entonces pasará al estado interno 1101 (13), escribirá 1 y se moverá hacia la izquierda un paso (la cinta se moverá hacia la derecha).

A continuación es conveniente inventar una notación para la secuencia del INPUT. Esta notación se llama notación binaria expandida. Consiste en cambiar la secuencia original binaria por otra construida de la siguiente forma: el 0 se cambia por 0 y el 1 por 10 y se ponen un cero a la izquierda y/o a la derecha del resultado si empieza o acaba en 1 respectivamente. Así por ejemplo, el número 13 que en binario es1101 es en binario expandido 1010010 con un cero delante por esta última regla 01010010. Para volver al original hay que contraer el binario expandido con la siguiente regla:

Empezamos a leer por la izquierda el binario expandido. Cuando encontremos un 0 tomamos nota de cuántos 1 hay hasta llegar al siguiente 0 y lo escribimos. Si encontramos que hay dos 0seguidos, apuntaríamos un 0 porque no habría ningún 1.Veamos con el 13 cómo se haría. El primer 0 se encuentra en la primera posición y el siguiente 0está en la posición 3. Entre los dos solo hay un 1. Lo anotamos. Seguidamente hay un 1, y después un 0, entonces apuntamos 1 porque hay un 1entre medias de ellos. Esto es lo que se hace sucesivamente y encontramos: 1101 que es el número original.

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.

Page 5: Reny Galaviz Web Quest

Avanzar el cabezal lector/escritor hacia la izquierda.El compuesto 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ámetro el estado actual de la maquina y el carácter leído 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 será la cinta la cual 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

Evaluación

Lenguajes aceptados por una maquina Turing Aceptan lenguajes formales que pueden ser generados por una gramática de tipo 0: recursivamente innumerable. Las maquinas de Turing son los reconocedores de lenguaje más poderosos que existen.

Lenguajes regulares: las gramáticas (de tipo 3) formales definen un lenguaje describiendo como se pueden generar las cadenas del lenguaje… Las gramáticas regulares (aquellos reconocidos por un autómata finito). Son las gramáticas más restrictivas. El lado derecho de una producción debe contener un símbolo Terminal y como máximo un símbolo no Terminal.

Máquinas de Turing Deterministas y no Deterministas

La entrada de una máquina de Turing viene determinada por el estado actual y el símbolo leído, un par [estado, símbolo], siendo el cambio de estado, la escritura de un nuevo símbolo y el movimiento las acciones a tomar en función de una entrada. En el caso de que para cada par estado y símbolo posible exista a lo sumo una posibilidad de ejecución, se dirá que es una máquina de Turing determinista, mientras que en el caso de que exista al menos un par [estado, símbolo] con más de una posible combinación de actuaciones se dirá que se trata de una máquina de Turing no determinista.

Page 6: Reny Galaviz Web Quest

La función de transición δ en el caso no determinista, queda definida como sigue:

¿Cómo sabe una máquina no determinista cuál de las varias actuaciones tomar? Hay dos formas de verlo: una es decir que la máquina es "el mejor adivino posible", esto es, que siempre elige la transición que eventualmente la llevará a un estado final de aceptación. La otra es imaginarse que la máquina se "clona", bifurcándose en varias copias, cada una de las cuales sigue una de las posibles transiciones. Mientras que una máquina determinista sigue un solo "camino computacional", una máquina no determinista tiene un "árbol computacional". Si cualquiera de las ramas del árbol finaliza en un estado de aceptación, se dice que la máquina acepta la entrada.

La capacidad de cómputo de ambas versiones es equivalente; se puede demostrar que dada una máquina de Turing no determinista existe otra máquina de Turing determinista equivalente, en el sentido de que reconoce el mismo lenguaje, y viceversa. No obstante, la velocidad de ejecución de ambos formalismos no es la misma, pues si una máquina no determinista M reconoce una cierta palabra de tamaño n en un tiempo O(t(n)), la máquina determinista equivalente reconocerá la palabra en un tiempo O(2t(n)). Es decir, el no determinismo permitirá reducir la complejidad de la solución de los problemas, permitiendo resolver, por ejemplo, problemas de complejidad exponencial en un tiempo polinómico.

Lenguajes Libres de contexto: Estas gramáticas conocidas también como gramáticas de tipo 2 o gramáticas independientes del contexto, son las que generan los lenguajes libres o independientes del contexto. Los lenguajes libres del contexto son aquellos que pueden ser reconocidos por un autómata de pila determínistico o no determínistico. Como toda gramática se definen mediante una cuadrupla G=N, T, S, P), siendo N un conjunto finito de símbolos no terminales; T un conjunto de símbolos terminales: P un conjunto finito de producciones; S es el símbolo distinguido o axioma.

Page 7: Reny Galaviz Web Quest

Conclusió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.

• Existen diversas clasificaciones de las Máquinas de Turing, atendiendo a los estados reconocidos, tipo de cinta, cantidad o división de dichas cintas: MT con directiva de permanecer, MT con cinta infinita en una dirección, MT en dos direcciones, MT multicinta, MT Multidimensional, MT No determinista.

• Las MT, de acuerdo a la clasificación de los lenguajes formales de Chomsky, acepta los lenguajes tipo cero (0), llamados lenguajes recursivamente enumerables.

• La creación modular de una maquina de Turing permite desarrollar máquinas complejas a partir de bloques elementales, mediante diagramas de transiciones. La construcción de máquinas de Turing se lleva a cabo mediante dichos diagramas de transición, y sus combinaciones.

• Las MT han sido aplicadas en el desarrollo de la teoría computacional y en las llamadas máquinas oráculo, generadores de funciones, calculadoras de funciones, y generadores de lenguaje.

Page 8: Reny Galaviz Web Quest

Bibliografía y Cibergrafía

Brena Ramón, Modulo de Estudio de Autómatas y Lenguajes Formales. Tec de Monterrey Verano 2003 Salazar Ramos Roberto,

Otros, Curso de entrenamiento de tutores UNAD, UNAD, Vicerrectoría de medios y mediaciones pedagógicas – 2007

Hopcroft, John; Motwani, Rajeev; Ullman, Jeffrey D. (2001). Introduction to Automata Theory, Languages, and Computation (en inglés), Massachuset

http://es.wikipedia.org/wiki/M%C3%A1quina_de_Turing http://www97.intel.com/cr/ProjectDesign/InstructionalStrategies/CooperativeLearning/

http://moodle.org/mod/forum/discuss.php?d=47912 Jordi Botella de Magia

http://www.exa.unicen.edu.ar/asai2006/pdfs/waife/duran.pdf Autor: Elena B. Durán

http://www.cs.usfca.edu/~jbovet/vas.html

http://www.cs.duke.edu/csed/jflap/

http://docencia.udea.edu.co/SistemasDiscretos/contenido/capitulo_01.html

http://www.monografias.com/trabajos10/clasi/clasi.shtml

URL www.automata.elpedregal.co.ve