Download PROGRAMACION LOGICA Y FUNCIONAL SCC
Document related concepts
Transcript
Toda copia en PAPEL es un "Documento No Controlado" a excepción del original. INSTITUTO TECNOLÓGICO SUPERIOR DE MISANTLA Planeación Didáctica de Programación Lógica y Funcional Responsable del Proceso: Docente frente a grupo Apartado: 7.1 Copia No. Código: PD-SCC-1019 o Fecha de Versión: 23 de Enero de 2017 Versión No.: 02 Hoja : 2 de 12 Diseña, implementa y administra bases de datos optimizando los recursos disponibles, conforme a las normas vigentes de manejo y seguridad de la información. o Desarrolla y administra software para apoyar la productividad y competitividad de las organizaciones cumpliendo con estándares de calidad. 3. OBJETIVO(S) GENERAL(ES) DEL CURSO Conoce los principios lógicos y funcionales de la programación para identificarlos y aplicarlos en la resolución de problemas a través del diseño de agentes inteligentes. 4.- COMPETENCIAS A DESARROLLAR 4.1 Competencias Específicas: Conoce los principios lógicos y funcionales de la programación para identificarlos y aplicarlos en la resolución de problemas a través del diseño de agentes inteligentes. Identifica los paradigmas de los lenguajes de programación. Realiza una aplicación dando solución a un problema del entorno usando el paradigma de la programación funcional. Conoce las ventajas y desventajas del paradigma de programación lógica. Identifica los elementos de la programación lógica. Realiza una aplicación dando solución a un problema del entorno usando el paradigma de la programación lógica. 4.2 Competencias Genéricas: Capacidad de análisis y síntesis. Capacidad de organizar y planificar. Comunicación oral y escrita. Habilidades básicas de manejo de la computadora para la realización de análisis. Habilidad para buscar y analizar información proveniente de fuentes diversas. Solución de problemas. Toma de decisiones. 4.3. Competencias Instrumentales: Conocimientos generales básicos. Conocimientos básicos de la carrera Comunicación oral y escrita en su propia lengua. VER.02/08/12 Toda copia en PAPEL es un "Documento No Controlado" a excepción del original. F-SA-01 INSTITUTO TECNOLÓGICO SUPERIOR DE MISANTLA Planeación Didáctica de Programación Lógica y Funcional Responsable del Proceso: Docente frente a grupo Apartado: 7.1 Copia No. Código: PD-SCC-1019 Fecha de Versión: 23 de Enero de 2017 Versión No.: 02 Hoja : 3 de 12 Conocimiento de una segunda lengua. Habilidades básicas de manejo de la computadora. Habilidades de gestión de información (habilidad para buscar y analizar información proveniente de fuentes diversas) Solución de problemas. Toma de decisiones. 4.4. Competencias Interpersonales: Capacidad crítica y autocrítica. Trabajo en equipo. Habilidades interpersonales. Compromiso ético. 4.5. Competencias Sistémicas: Capacidad de aplicar los conocimientos en la práctica. Habilidades de investigación. Capacidad de aprender. Capacidad de adaptarse a nuevas situaciones. Capacidad de generar nuevas ideas (creatividad). Liderazgo. Habilidad para trabajar en forma autónoma. Iniciativa y espíritu emprendedor. Preocupación por la calidad. Búsqueda del logro. VER.02/08/12 Toda copia en PAPEL es un "Documento No Controlado" a excepción del original. F-SA-01 INSTITUTO TECNOLÓGICO SUPERIOR DE MISANTLA Planeación Didáctica de Programación Lógica y Funcional Responsable del Proceso: Docente frente a grupo Apartado: 7.1 Copia No. Código: PD-SCC-1019 Fecha de Versión: 23 de Enero de 2017 Versión No.: 02 Hoja : 4 de 12 5. PLANEACIÓN DIDÁCTICA POR UNIDAD 5.1. Unidad: I Tema: Conceptos Fundamentales Objetivo de la Unidad (Competencia a Desarrollar por el Alumno) Desarrollar una visión del conjunto de los lenguajes de alto nivel que sirva como marco de referencia a la metodología de los lenguajes de inteligencia artificial, como lo son la programación lógica y funcional. No. Subtema Descripción del Subtema Actividades del Maestro 1.1 Diferentes estilos de programación. Ejemplica las características de los diversos estilos de la programación. 1.2 Analizando diferentes estilos de programación. Explica las diferencias entre estilos de programación. 1.2.1 1.2.2 Sugerencia de Evaluación por Unidad Éxamen escrito. Tareas. Exposiciones. Competencia a Desarrollar Actividad del Alumno Documenta las generalidades y campos de aplicación de estilos de programación, y realiza un mapa conceptual. Analiza programas que describan cada uno de los estilos de programación. Evaluación de expresiones. Define el concepto de expresión y los distintos tipos de operadores para su evaluación. Resuelve expresiones manejando operadores aritméticos, relacionales y lógicos. Tipos de datos. Elabora una tabla que muestre los diferentes tipos de datos. Investiga los tipos de datos que suelen utilizarse en los diferentes paradigmas y lenguajes de programación. VER.02/08/12 Capacidad de análisis y síntesis. Capacidad de organizar y planificar. Habilidad para buscar y analizar información proveniente de fuentes diversas. Solución de problemas. Toma de decisiones. Trabajo en equipo. Capacidad de aplicar los conocimientos. Habilidades de investigación. F-SA-02 Toda copia en PAPEL es un "Documento No Controlado" a excepción del original. No. Sesiones 1 1 2 2 INSTITUTO TECNOLÓGICO SUPERIOR DE MISANTLA Planeación Didáctica de Programación Lógica y Funcional Responsable del Proceso: Docente frente a grupo Apartado: 7.1 Copia No. Código: PD-SCC-1019 1.2.3 1.2.4 Disciplina de tipos. Define el concepto de la disciplina de tipos. Funciones. Explica el modelado de un proceso que recibe valores de entrada y retorna un valor resultado (función) mediante ejemplos. Fecha de Versión: 23 de Enero de 2017 Versión No.: 02 Hoja : 5 de 12 Expone los diferentes lenguajes de programación que implementan la disciplina de tipos. Implementa programas con funciones concretas que sirvan para evitar escribir el mismo código varias veces y la simplificación de los mismos. Bibliografia: Capacidad de generar nuevas ideas. Liderazgo. Habilidad para trabajar en forma autónoma. Búsqueda del logro. Recurso Didáctico: Allen B. Tucker. Lenguajes de programación. ISBN: 9684221258 Grady Booch. Programación orientada a objetos, ISBN: 9684443528. Stuart Russell, Norvig. Inteligencia Artificial: Un Enfoque Moderno, Segunda Edición. Prentice Hall VER.02/08/12 Pizarrón blanco. Computadora. Cañon proyector. F-SA-02 Toda copia en PAPEL es un "Documento No Controlado" a excepción del original. 2 2 INSTITUTO TECNOLÓGICO SUPERIOR DE MISANTLA Planeación Didáctica de Programación Lógica y Funcional Responsable del Proceso: Docente frente a grupo Apartado: 7.1 Copia No. Código: PD-SCC-1019 5.2. Unidad: II Tema: Fecha de Versión: 23 de Enero de 2017 Versión No.: 02 Hoja : 6 de 12 Modelo de Programación Funcional Objetivo de la Unidad (Competencia a Desarrollar por el Alumno) Permitir que el estudiante conozca las ventajas y puntos débiles de la programación funcional; diseñar, codificar, probar y depurar programas funcionales; identificar los principales ámbitos de aplicación para su utilización como herramienta alternativa y complementaria en la solución de problemas. No. Subtema Descripción del Subtema 2.1 Introducción al modelo de programación funcional. 2.2 El tipo de datos. 2.3 Funciones. 2.4 Intervalos. 2.5 Operadores. VER.02/08/12 Actividades del Maestro Explica las características de la programación funcional y el tipo de problemática que resuelve. Introduce y explica los diferentes tipos de datos que existen en la programacion funcional. Explica la forma de definir funciones en un lenguaje de programación funcional. Define el concepto de intervalo y la forma de construirlos. Define y explica los operadores como funciones y viceversa. Sugerencia de Evaluación por Unidad Éxamen escrito. Prácticas. Tareas/Trabajo. Competencia a Desarrollar Actividad del Alumno Elabora una tabla comparativa de lenguajes de programación funcional. Esquematiza los tipos de datos válidos de un lenguaje de programación funcional. Codifica funciones concretas en un lenguaje de programación fucional. Realiza e implementa ejercicios sobre intervalos que den como resultado listas. Realiza e implementa ejercicios sobre operadores mediante funciones. Capacidad de análisis y síntesis. Capacidad de organizar y planificar. Habilidad para buscar y analizar información proveniente de fuentes diversas. Solución de problemas. Toma de decisiones. Trabajo en equipo. Capacidad de aplicar los conocimientos. Habilidades de investigación. F-SA-02 Toda copia en PAPEL es un "Documento No Controlado" a excepción del original. No. Sesiones 1 1 2 2 2 INSTITUTO TECNOLÓGICO SUPERIOR DE MISANTLA Planeación Didáctica de Programación Lógica y Funcional Responsable del Proceso: Docente frente a grupo Apartado: 7.1 Copia No. Código: PD-SCC-1019 2.6 2.7 2.8 Aplicaciones de las listas. Árboles. Evaluación perezosa. Explica la importancia de las listas, establece su estructura y las diferentes formas de construcción. Define y explica el concepto de arbol; presenta y analiza su construcción, clasificación y aplicación; además propone ejercicios para su resolución. Explica la forma en la que se resuele una expresión bajo el esquema de evaluación perezosa. Fecha de Versión: 23 de Enero de 2017 Versión No.: 02 Hoja : 7 de 12 Realiza ejercicios de listas y programa una aplicación que implique el uso de una lista. Aplica los conceptos de la programación funcional para resolver un problema real, a partir de un problema sencillo. Capacidad de generar nuevas ideas. Liderazgo. Habilidad para trabajar en forma autónoma. Búsqueda del logro. Investiga las condiciones bajo las cuales se utiliza la evaluación, y resuelve ejercicios usando este método. Bibliografia: 2 4 2 Recurso Didáctico: Alváro Tasistro, Jorge Vidart. Programación lógica y funcional. 1988. Jeroen Fokker. Programación Funcional. Universidad de Utrecht - Departamento de Informática. 1996. José A. Alonso Jiménez et al. Piensa en Haskell. Grupo de Lógica Computacional - Dpto. de Ciencias de la Computación e Inteligencia Artificial. Universidad de Sevilla. Sevilla, 10 de Julio de 2012 Stuart Russell, Norvig. Inteligencia Artificial: Un Enfoque Moderno, Segunda Edición. Prentice Hall VER.02/08/12 Pizarrón blanco. Computadora. Cañon proyector. Software (Lenguaje de Programación: Haskell) F-SA-02 Toda copia en PAPEL es un "Documento No Controlado" a excepción del original. INSTITUTO TECNOLÓGICO SUPERIOR DE MISANTLA Planeación Didáctica de Programación Lógica y Funcional Responsable del Proceso: Docente frente a grupo Apartado: 7.1 Copia No. Código: PD-SCC-1019 5.3. Unidad: III Tema: Fecha de Versión: 23 de Enero de 2017 Versión No.: 02 Hoja : 8 de 12 Programación Lógica. Objetivo de la Unidad (Competencia a Desarrollar por el Alumno) Conoce las ventajas y desventajas del paradigma de programación lógica. Identifica los elementos de la programación lógica. No. Subtema 3.1 3.2 Descripción del Subtema Repaso de la lógica de primer orden. Unificación y resolución. VER.02/08/12 Actividades del Maestro Revisa los conceptos básicos de la lógica de primer orden necesarios para abordar los aspectos formales de la programación lógica. Define y explica el principio de resolución como mecanismo de inferencia utilizado en la programación lógica; además del concepto de unificación de dos fórmulas bien formadas que sintácticamente se volveran equivalentes. Sugerencia de Evaluación por Unidad Éxamen escrito. Tareas/Trabajo. Exposiciones. Competencia a Desarrollar Actividad dell Alumno Realiza ejercicios de lógica de primer orden. Investiga los conceptos de unificación y resolución en la programación lógica; realiza ejercicios de unificación y resolución. Capacidad de análisis y síntesis. Capacidad de organizar y planificar. Habilidad para buscar y analizar información proveniente de fuentes diversas. Solución de problemas. Toma de decisiones. Trabajo en equipo. F-SA-02 Toda copia en PAPEL es un "Documento No Controlado" a excepción del original. No. Sesiones 2 4 INSTITUTO TECNOLÓGICO SUPERIOR DE MISANTLA Planeación Didáctica de Programación Lógica y Funcional Responsable del Proceso: Docente frente a grupo Apartado: 7.1 Copia No. Código: PD-SCC-1019 3.3 3.4 Fecha de Versión: 23 de Enero de 2017 Versión No.: 02 Hoja : 9 de 12 Cláusulas de Horn. Resolución SLD. Análiza y define las cláusulas de Horn y la metodología de la resolución SLD. Realiza ejercicios de conversión de lógica de primer orden en cláusulas de Horn y ejercicios de resolución SLD. Programación lógica con clausulas de Horn. Explica la estructura y definir la construcción de las cláusulas de Horn en la programación lógica. Programa la solución de un problema real aplicando los conceptos de las cláusulas de Horn mediante la programación lógica. Bibliografia: Capacidad de aplicar los conocimientos. Habilidades de investigación. Capacidad de generar nuevas ideas. Liderazgo. Habilidad para trabajar en forma autónoma. Búsqueda del logro. 4 4 Recurso Didáctico: Stuart Russell, Norvig. Inteligencia Artificial: Un Enfoque Moderno, Segunda Edición. Prentice Hall Jeroen Fokker. Programación Funcional. Universidad de Utrecht - Departamento de Informática. 1996. Alváro Tasistro, Jorge Vidart. Programación lógica y funcional. 1988. José A. Alonso Jiménez et al. Piensa en Haskell. Grupo de Lógica Computacional - Dpto. de Ciencias de la Computación e Inteligencia Artificial. Universidad de Sevilla. Sevilla, 10 de Julio de 2012 VER.02/08/12 Pizarrón blanco. Computadora. Cañon proyector. Software (Lenguaje de Programación) F-SA-02 Toda copia en PAPEL es un "Documento No Controlado" a excepción del original. INSTITUTO TECNOLÓGICO SUPERIOR DE MISANTLA Planeación Didáctica de Programación Lógica y Funcional Responsable del Proceso: Docente frente a grupo Apartado: 7.1 Copia No. Código: PD-SCC-1019 5.4. Unidad: IV Tema: Fecha de Versión: 23 de Enero de 2017 Versión No.: 02 Hoja : 10 de 12 Modelo de Programación Lógica Objetivo de la Unidad (Competencia a Desarrollar por el Alumno) Realiza una aplicación dando solución a un problema del entorno usando el paradigma de la programación lógica. No. Subtema 4.1 4.2 Descripción del Subtema Introducción al modelo de programación lógica. Semántica de los programas lógicos. Actividades del Maestro Actividad dell Alumno Describe los conceptos básicos de la programación lógica, explica las características, el uso y alcances del paradigma. Introduce y define el tratamiento de los lenguajes lógicos y la representación de su semántica. Define los mecanismos para representar cláusulas como base de conocimiento. Documenta y refuerza en varias fuentes de información los temas presentados por el docente. Elabora un mapa mental a partir de la información recabada. 4.3 Representación clausada del conocimiento. 4.4 Consulta de una base de cláusulas. Define la manipulación de la base de conocimiento en la programación lógica. 4.5 Espacios de búsqueda. Define los diferentes tipos de espacios de busqueda (profundidad y amplitud) VER.02/08/12 Realiza ejercicios de análisis de la semántica de los programas lógicos realizados en Prolog. Analiza, define y programa en Prolog la base de conocimiento de la aplicación del proyecto. Realiza consultas, inserciones, eliminaciones y actualizaciones de la base de conocimiento del proyecto en desarrollo. Realiza ejercicios de espacios de busqueda utilizando los árboles de busqueda de soluciones. Sugerencia de Evaluación por Unidad Prácticas. Exposiciones. Proyecto. Competencia a Desarrollar No. Sesiones 2 Capacidad de análisis y síntesis. Capacidad de organizar y planificar. Habilidad para buscar y analizar información proveniente de fuentes diversas. Solución de problemas. Toma de decisiones. Trabajo en equipo. 2 2 2 3 F-SA-02 Toda copia en PAPEL es un "Documento No Controlado" a excepción del original. INSTITUTO TECNOLÓGICO SUPERIOR DE MISANTLA Planeación Didáctica de Programación Lógica y Funcional Responsable del Proceso: Docente frente a grupo Apartado: 7.1 Copia No. Código: PD-SCC-1019 Programación lógica con números, listas y arboles. Explica los componentes (numeros, listas y arboles) de la programacon lógica en el lenguaje de programación Prolog. 4.7 Control de búsqueda en programas lógicos. Introduce las formas del control de busqueda en la programación lógica. 4.8 Manipulación de terminos. Explica los tipos especiales de los predicados no lógicos. Predicados metalógicos. Explica el concepto, características, sintaxis y semántica de los predicados metalógico. 4.6 4.9 Fecha de Versión: 23 de Enero de 2017 Versión No.: 02 Hoja : 11 de 12 Desarrolla un proyecto con aplicación real basado en lenguaje lógico. Elabora un cuadro sinóptico en el que esquematiza los criterios que usa el control de búsqueda en la programación lógica. Analiza el procedimiento que se realiza para manipular términos, así como los tipos de predicados. Resuelve ejercicios de ecuaciones de predicados metalógicos. Bibliografia: 3 Capacidad de aplicar los conocimientos. Habilidades de investigación. Capacidad de generar nuevas ideas. Liderazgo. Habilidad para trabajar en forma autónoma. Búsqueda del logro. 2 2 2 Recurso Didáctico: Stuart Russell, Norvig. Inteligencia Artificial: Un Enfoque Moderno, Segunda Edición. Prentice Hall Burnham, W. D. PROLOG . Programación y aplicaciones. Limusa, 1989. ISBN: 978-968-18-3012-0 Alváro Tasistro, Jorge Vidart. Programación lógica y funcional. 1988 VER.02/08/12 Pizarrón blanco. Computadora. Cañon proyector. Software (Lenguaje de Programación: Prolog) F-SA-02 Toda copia en PAPEL es un "Documento No Controlado" a excepción del original. INSTITUTO TECNOLÓGICO SUPERIOR DE MISANTLA Planeación Didáctica de Programación Lógica y Funcional Responsable del Proceso: Docente frente a grupo Apartado: 7.1 Copia No. Código: PD-SCC-1019 Fecha de Versión: 23 de Enero de 2017 Versión No.: 02 Hoja : 12 de 12 6.- REVISION DE LA PLANEACION DIDACTICA Esta planeación deberá ser revisada cada dos ciclos escolares a partir de la fecha de versión. VER.02/08/12 Toda copia en PAPEL es un "Documento No Controlado" a excepción del original. F-SA-02