guia_colab3_301405

10
UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA – UNAD Nombre escuela: Escuela de Ciencias Básicas Tecnología e Ingeniería Nombre programa: Ingeniería de Sistemas AUTOMATAS Y LENGUAJES FORMALES 301405 Programa: Ingeniería de Sistemas GUIA DE ACTIVIDAD TRABAJO COLABORATIVO N 3 LENGUAJES ESTRUCTURADOS POR FRASES BOGOTA. DC. ENERO DE 2012

Transcript of guia_colab3_301405

Page 1: guia_colab3_301405

UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA – UNAD Nombre escuela: Escuela de Ciencias Básicas Tecnología e Ingeniería Nombre programa: Ingeniería de Sistemas

AUTOMATAS Y LENGUAJES FORMALES

301405

Programa: Ingeniería de Sistemas

GUIA DE ACTIVIDAD

TRABAJO COLABORATIVO N 3

LENGUAJES ESTRUCTURADOS POR FRASES

BOGOTA. DC.

ENERO DE 2012

Page 2: guia_colab3_301405

UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA – UNAD Nombre escuela: Escuela de Ciencias Básicas Tecnología e Ingeniería Nombre programa: Ingeniería de Sistemas

Temáticas revisadas: Tercera Unidad Capítulos Lecciones III. LENGUAJES ESTRUCTURADOS POR FRASES

7. Máquinas de Turing. 31. Definición. 32. Funcionamiento de la Máquina de Turing 33. Diferencias entre un Computador y una Máquina de Turing 34. La Máquina Universal de Turing 35. Codificación de Máquinas de Turing

8. Máquina de Turing y Computación.

36. Tesis de Church/Turing 37. Lenguajes Aceptados por la Maquina de Turing. 38. Variantes de Una Máquina de Turing 39. Problemas de Hilbert 40. Problemas Insolubles para la Teoría de Lenguajes

9. Funciones recursivas. 41.Lenguajes Decidibles 42. Problemas de Halting 43. Decibilidad de Teorías Lógicas 44. Funciones Computables 45. Reducibilidad de Turing

INTRODUCCIÓN: En las Unidades precedentes se han estudiado lo que se puede considerar las máquinas abstractas que permiten solucionar ciertos tipos de algoritmos, los algoritmos en los que no puede recordarse más que una cantidad fija de información y otros en los que la información desarrollada durante la ejecución del algoritmo puede recuperarse solo en concordancia con la regla “lifo” últimos en entrar primeros en salir, en esta unidad se describe una maquina abstracta, llamada Máquina de Turing , que es aceptada de manera amplia como modelo general de computación, aunque las operaciones básicas de esta máquina son comparables en su sencillez a las de las máquinas estudiadas en las unidades anteriores, las nuevas maquinas pueden realizar una amplia variedad de operaciones de cómputo. Además de aceptar lenguajes les es posible computar funciones y de conformidad con la tesis de Church-Turing, ejecutar casi cualquier procedimiento algorítmico concebible. OBJETIVO GENERAL: Reconocer la importancia y el poder computacional de las Máquinas de Turing en el contexto de la solución de problemas computacionales de reconocimiento de Lenguajes. OBJETIVOS ESPECÍFICOS: Estudiar las Máquinas de Turing y sus propiedades básicas

Page 3: guia_colab3_301405

UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA – UNAD Nombre escuela: Escuela de Ciencias Básicas Tecnología e Ingeniería Nombre programa: Ingeniería de Sistemas

METODOLOGÍA: Las sesiones son desarrolladas en forma teórica, La estrategia de aprendizaje a utilizar será el Aprendizaje colaborativo. Porque aprendizaje colaborativo? El desarrollo de las actividades de aprendizaje está basado en el aprendizaje colaborativo como una estrategia de aprendizaje y de trabajo de grupo que es usado en los cursos que se ofertan en el campus virtual de la UNAD, se requieren estas características para realizar un trabajo realmente efectivo. Participación: el potencial de un grupo de aprendizaje se maximiza cuando todos los estudiantes participan activamente en las discusiones. Crecimiento Social: permite establecer y mantener una comprensión compartida de significados. Habilidades Conversacionales: la calidad de la comunicación en grupos de discusión influencia la experiencia de aprendizaje y los logros de los miembros del grupo. Procesamiento Grupal y Análisis de Rendimiento: existe procesamiento grupal cuando el grupo discute sus progresos y decide si continúa con su comportamiento o lo cambia. Para ello los estudiantes deben evaluar individual y colectivamente sus rendimientos. Formación de los grupos colaborativos: Los Grupos están conformados por 5 estudiantes que el sistema en el momento del ingreso al curso académico los selecciona, es de anotar que este grupo está definido para desarrollar todo el curso académico y no es factible el cambio de grupo, este proceso fomenta deliberadamente la diversidad mezclando los estudiantes con diferente nivel, sexo, origen, estilo de aprendizaje, etc. Aunque esta distribución no toma en cuenta la opinión de cada estudiante si pretende que se conserve dentro del equipo la pluralidad para potenciar la calidad, la cantidad y la velocidad de aprendizaje. Organización los Grupos colaborativos: Los equipos luego de la distribución aleatoria que hace el sistema deben organizarse en este pequeño grupo obviamente con el compromiso de trabajar y de desempeñar algunos roles o funciones básicas, que son indispensables para el desarrollo de la actividad. Una distribución de funciones básicas que se propone y debe ser definida una vez se hayan “conocido” los integrantes del grupo, es la siguiente (coordinador, relator, animador, técnico y supervisor) aunque los estudiantes pueden crear las funciones que consideren más adecuadas. En cada unidad de aprendizaje del curso los estudiantes deben elegir un coordinador del equipo que, a su vez, distribuye el resto de funciones entre sus compañeros. Cuando comienza una nueva unidad deben volver a elegir un coordinador pero de tal forma que nadie repita un cargo hasta que todos han pasado ya por ese cargo. La idea es que todos aprendan a

Page 4: guia_colab3_301405

UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA – UNAD Nombre escuela: Escuela de Ciencias Básicas Tecnología e Ingeniería Nombre programa: Ingeniería de Sistemas

ser responsables de todas las funciones esenciales dentro de un equipo, que todos vivan la experiencia de esa responsabilidad. ¿Cómo se logra pertenencia con el grupo colaborativo?: Lo importante en la conformación del equipo es el hecho de que se sientan parte del equipo en el cual van a trabajar durante todo el semestre, para ello cada grupo deberá ponerse de acuerdo para desarrollar una primera actividad grupal, que está planteada en el foro general del curso, deberán elaborar una presentación multimedia que debe contener un acta de conformación del grupo, un nombre para el equipo, un logo distintivo del grupo y la redacción de texto en donde el equipo se presenta a sus compañeros explicando sus puntos fuertes y débiles. ¿Cómo organizar su trabajo?: En este punto cobra relevancia e importancia el uso del wiki como elemento para compartir toda la información del grupo y registrar los aportes de cada uno de los integrantes del grupo, si es decisión del grupo no usar el wiki, pueden realizar sus aporte por el foro colaborativo de cada práctica en los temas de trabajo individual y trabajo grupal. Para la organización del trabajo a desarrollar el proceso es el siguiente:

• Planificación: Se deben repartir las funciones entre los componentes del grupo colaborativo y planificar el trabajo. Para ello elaboraran un "Plan de Acción" que es un documento en un procesador de palabras en donde mostrarán el organigrama del equipo, la organización del tema en donde se escriba que saben sobre el tema, que desean aprender y cómo van a buscar la información (Desarrollo de la practica en el Cead, Bibliotecas, en la Red, haciendo entrevistas a especialistas, etc.), el diagrama de flujo del proyecto y el calendario de actividades. Este Documento debe ser enviado al foro de trabajo colaborativo para compartirlo con el grupo y con el tutor en el TEMA de producción del grupo.

• Elaboración del trabajo: Con la información individual y grupal recogida en

las bibliotecas, en la Red, haciendo entrevistas a especialistas etc. deberán elaborar un informe que recoja lo esencial que han aprendido: el trabajo final. Para ello negociarán y construirán entre todo el grupo los contenidos de la práctica, se deja la decisión al grupo para que seleccione la técnica más adecuada para compartir la producción de cada uno, se sugiere elaboren mapas de ideas o un mapa conceptual del tema a partir de la información elaborada individualmente.

Producto esperado a entregar: El producto es un documento que debe cubrir todos los puntos de la rúbrica de evaluación y debe ser elaborado en un procesador de palabras (openoffice write o Microsoft Word.) para luego ser convertido a PDF.

Page 5: guia_colab3_301405

UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA – UNAD Nombre escuela: Escuela de Ciencias Básicas Tecnología e Ingeniería Nombre programa: Ingeniería de Sistemas

DOCUMENTO A ENTREGAR: Se debe entregar un archivo comprimido (.rar) que contenga el siguiente nombre: Como ejemplo, si el estudiante se llama Carlos Alberto Amaya Tarazona y pertenece al grupo 41, entonces el archivo a enviar es: 41_col3_301405.rar

El archivo comprimido contendrá los siguientes elementos:

1. UN DOCUMENTO EN PDF: que contieneFormato de presentación del Documento: El documento debe contener los siguientes puntos

:

• Datos de los Estudiantes (nombre, número de matrícula, e-mail, Zona, Cead, Grupo colaborativo)

• Datos del tutor. • Introducción concertada y redactada por los integrantes del Grupo • ·Objetivos (General y Específicos) que pretenden alcanzar con el desarrollo

de la actividad. • Descripción general del trabajo. Desarrollo de cada uno de los puntos

enunciados a continuación. • Bibliografía acorde a las Normas APA Rev 5.

2. LOS ARCHIVOS GENERADOS POR EL SIMULADOR: Total cinco

archivos cargados en el simulador. Debe proporcionar las fuentes de los archivos y verificar que se puede ejecutar y simular. Estos archivos los debe agrupar ordenadamente en una carpeta.

Exitos. Cordialmente. Ing. (Msc). Carlos Alberto Amaya Tarazona Para evitar confusión en la forma, y contenidos que debe presentar, verifique el esquema siguiente del contenido a entregar:

Page 6: guia_colab3_301405

UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA – UNAD Nombre escuela: Escuela de Ciencias Básicas Tecnología e Ingeniería Nombre programa: Ingeniería de Sistemas

Page 7: guia_colab3_301405

UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA – UNAD Nombre escuela: Escuela de Ciencias Básicas Tecnología e Ingeniería Nombre programa: Ingeniería de Sistemas

EJERCICIOS A DESARROLLAR:

1. Mediante un grafo explique la construcción modular de las Máquinas de Turing y describa cada uno de sus elementos.

2. Diseñe una MT que reconozca {0 n 1 n : n ≥ 1 }

• Cambie un 0 por una x (explique qué pasa con la máquina). • Cambie un 1 por una y (explique qué pasa con la máquina). • Identifique en qué momento la máquina de Turing se detiene.

• Calcule la función δ • Grafíquela e identifique sus elementos. • Identifique la función de transición.

3. Construya una MT que acepte el Lenguaje (represéntela

L = {a i b i c i : i ≥ 0} sobre ∑ = {a,b,c}

• Se cambia la a por una x moviéndose a la derecha. (explique qué pasa

con la máquina). Represente los movimientos en la tabla de transiciones para MT.

• Luego se mueve a la izquierda pasando por encima de las bs (bes) (explique qué pasa con la máquina). Represente los movimientos en la tabla de transiciones para MT.

• Identifique en qué momento la máquina de Turing se detiene.

• Calcule la función δ • Grafíquela e identifique sus elementos.

4. En el siguiente diseño de máquina de Turing (MT), identifique cuales operaciones realiza y que son válidas acordes a la forma de “operar” o “trabajar” una MT. : Sea ordenado en la descripción acorde a los pasos, posiciones y operaciones que hace la MT.

• Sea objetivo, crítico. La explicación es de la interpretación suya o la del grupo, que sea objetiva, crítica, conceptual. Si hace referencia a un texto o aun autor y no copia las fuentes o referencias de página, (formato APA) no es válido el punto.

Page 8: guia_colab3_301405

UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA – UNAD Nombre escuela: Escuela de Ciencias Básicas Tecnología e Ingeniería Nombre programa: Ingeniería de Sistemas

5. Cite un ejemplo real (aplicado a algún problema computacional válido, problema de cálculo, problema inmerso en un ejercicio de la vida diaria ó problema que se pueda representar mediante un algoritmo) que lo lleve a comprender o a asociar PRINCIPIO DE CHURCH-TURING:. (Describa su ejemplo de forma concisa y aplicada) Tenga cuidado con lo que copia de Internet. La explicación debe ser precisa, clara y objetiva, de su autoría. Si cita algún documento de la web, se verificarán las referencias y pié de página. Documento que no tenga estas referencias, será material no evaluado.

6. Construir una MT que reconozca

L = 01 * + = 10 *

Para la Máquina M = (Q, ∑, ┌ , q 0 , T , B , δ) Q = { q 0 , q 1 } x {0,1,B} Estado inicial [q 0 , B] Estado final [q 1 , B]

La función de transición δ está dada por:

δ ([q 0 , B] , 0 ) = ([q1 , 0], 0 , D)

δ ([q 0 , 0] , 1 ) = ([q 1 , 0], 1 , D) δ ([q 0 , 0] , B ) = ([q1 , B], B , D)

δ ([q 0 , B] , 1 ) = ([q1 , 1], 1 , D)

δ ([q 1 , 1] , 0 ) = ([q 1 , 1], 0 , D) δ ([q 1 , 1] , B ) = ([q 1 , B], B , D)

Page 9: guia_colab3_301405

UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA – UNAD Nombre escuela: Escuela de Ciencias Básicas Tecnología e Ingeniería Nombre programa: Ingeniería de Sistemas

7. Haciendo uso de un simulador, monte los tres ejercicios iniciales (2, 3 ,6) de este trabajo en un simulador y recorra la máquina, verificando:

• su estado inicial, • su estado final • estado de parada • estado de inicio • cadenas aceptadas.

Tenga en cuenta que la construcción de las máquinas (los diagramas de Moore) solo son permitidos si son generados por un simulador. En este ejercicio debe incluir los archivos generados por el simulador

8. Una manera más simple de determinar la indecibilidad es utilizando el

método de reducción, el cual está implícito en nuestra manera de pensar a la hora de solucionar ciertos problemas: dado un problema P1, este se reduce a solucionar P2. Es decir, si solucionamos P2, tenemos solucionado P1. Formule un problema típico que aplique a su vida cotidiana, personal, académica o laboral que mediante el método de reducción solucione esta “indecibilidad”. La formulación implica:

• Descripción del problema • Actores que intervienen • Justificación porque es indecidible • Una posible solución (de reducción) • Una comparativa con el autómata y la descripción de sus

componentes.

9. Diseñar una MT que acepte las palabras en {a, b} que terminen con a.

• Plásmela en el simulador (debe entregar el archivo generado por el simulador), Las imágenes capturadas van inmersas en el desarrollo del trabajo

• Plasme el diagrama de Moore. • Identifique los elementos de la MT para este ejercicio explicando su

significado. • Identifique la función de transición. • Ejecute el recorrido con el Run Test para una cadena válida.

Page 10: guia_colab3_301405

UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA – UNAD Nombre escuela: Escuela de Ciencias Básicas Tecnología e Ingeniería Nombre programa: Ingeniería de Sistemas

10. Considere la máquina de Turing de la figura e indique que tipo de cadenas

decide el lenguaje que acepta.

• Plásmela en el simulador. Las imágenes capturadas van inmersas en el desarrollo del trabajo.

• Ejecute el RunTest a la cadena aceptada (muéstrela en la captura de imagen para el trabajo)

• Plasme el diagrama de Moore. • Identifique la función de transición. • Ejecute el recorrido con el Run Test para una cadena válida.