Download Programación lógica y funcional - Centro Universitario de los Altos

Document related concepts

Lisp wikipedia , lookup

Mercury (lenguaje) wikipedia , lookup

Programación funcional wikipedia , lookup

Transcript
UNIVERSIDAD DE GUADALAJARA
CENTRO UNIVERSITARIO DE LOS ALTOS
DIVISIÓN DE ESTUDIOS EN FORMACIONES SOCIALES
LICENCIATURA:
INGENIERÍA EN COMPUTACIÓN
UNIDAD DE APRENDIZAJE POR OBJETIVOS
PROGRAMACIÓN LÓGICA Y FUNCIONAL
LIC. ABRAHAM ANDRADE LÓPEZ
Presidente de la Academia de Sistemas Digitales y de
Información
DR. ROGELIO MARTÍNEZ CÁRDENAS
Jefe del Departamento de Estudios Organizacionales
NOMBRE DE LA ASIGNATURA
CÓDIGO DE LA MATERIA
DEPARTAMENTO
ÁREA DE FORMACIÓN
PROGRAMACIÓN LÓGICA Y FUNCIONAL
CC307
ESTUDIOS ORGANIZACIONALES
ESPECIALIZANTE SELECTIVA
CENTRO UNIVERSITARIO
CENTRO UNIVERSITARIO DE LOS ALTOS
CARGA HORARIATEORÍA
80
CARGA HORARIA PRÁCTICA
0
CARGA HORARIA TOTAL
80
CRÉDITOS
11
TIPO DE CURSO
NIVEL DE FORMACIÓN PROFESIONAL
PARTICIPANTES
ELABORÓ
PRERREQUISITOS
FECHA DE ACTUALIZACIÓN
TEÓRICO
LICENCIATURA
LICENCIATURA EN INGENIERÍA EN
COMPUTACIÓN
SISTEMAS DIGITALES Y DE INFORMACIÓN
LENGUAJES DE PROGRAMACIÓN
COMPARADOS
ENERO DE 2011
OBJETIVO GENERAL
El estudiante va a comprender cuales son las ventajas significativas de programar
en ambos lenguajes (lógico y funcional) y discernir sobre cual seria la mejor
opción para implementar un sistema experto. Al concluir el curso tendrá,
adicionalmente a los contenidos recibidos en clase, un visión más amplia acerca
del tratamiento de información y conocimiento, y la posibilidad para aplicar
mecanismos alternativos, como el tratamiento de problemas complejos, el
aprendizaje y los mecanismos heurísticos.
OBJETIVOS ESPECÍFICOS
En cada módulo del contenido temático principal.
CONTENIDO TEMÁTICO
Módulo 1: Programación Lógica
Objetivo particular: El alumno comprenderá los principios básicos de la
programación lógica y su aplicación en la IA.
1.1 Unificación y Retroceso
1.2 Bases de Datos en prolog
1.3 Inducción Matemática y algoritmos sobre listas 8 HRS
1.3.1 Algoritmos básicos sobre listas
1.3.2 Algoritmos de ordenación
1.4 Algoritmos sobre árboles y grafos 8 HRS
1.4.1 Árboles binarios / balanceados
1.4.2 Representación de grafos como BD
1.4.3 Recorridos en árboles y grafos
1.4.4 Algoritmos de Kruskal / Djiskstra / Primm y similares
1.5 Introducción a Inteligencia Artificial (IA)
1.5.1 Representación de problemas con un grafo
1.5.2 El problema del agente viajero
1.5.3 Heurísticas [Hill climbing, Best-first, etc.]
1.6 Uso de operadores en prolog
1.6.1 Solución simbólica de ecuaciones algebraicas
1.7 Árboles SLD
1.8 Sistemas Expertos
Módulo 2: Programación Funcional.
Objetivo particular: El alumno comprenderá
programación funcional y su aplicación en la IA.
las
características
2.1 Cálculo Lambda
2.2 Funciones básicas de LISP
2.3 Algoritmos sobre listas
2.3.1 Algoritmos básicos sobre listas
2.3.2 Algoritmos de ordenación
2.4 Algoritmos sobre árboles y grafos
2.4.1 Árboles binarios / árboles binarios balanceados
2.4.2 Representación de grafos como base de conocimiento.
2.4.3 Recorrido en árboles y gráfos
2.5 Introducción a Inteligencia Artificial (IA)
2.5.1 Revisar los mismos algoritmos vistos en la Parte I.
2.5.2 Problema del agente viajero, heurísticas, etc.
2.6 Estructuras y POO [CLOS] en LISP
de
la
ESTRUCTURA CONCEPTUAL
PROG. LOGICA Y FUN.
Fundamentos PROLOG
Fundamentos de LISP
 Bases de datos
 Árboles y grafos
 Arboles SLD
 Cálculo Lambda
 Árboles y grafos
 Introducción a la IA
BIBLIOGRAFÍA BÁSICA
Iranzo J,(2007) Programación Lógica: Teoría y Práctica, Pearson
Lógica para la computación: teorías de primer orden, resolución y elementos de
programación lógica y prolog. Autor: Luis de Ledesma, Ed. Ra-Ma, 2009
Programación en lenguaje CLISP. Autor: Antonio Calvo Cuenca, Pedro González,
Cristobal Romero y Sebastián Ventura Editorial: CERASA, 2008
BIBLIOGRAFÍA COMPLEMENTARIA
MODALIDADES DEL PROCESO ENSEÑANZA APRENDIZAJE
Explicativo, Laboratorio, Internet, Correo Electrónico, Resolución de ejercicios,
Exposición del maestro, Programas de aplicación, Medios Didácticos,
Audiovisuales.
CONOCIMIENTOS, APTITUDES Y VALORES QUE EL ALUMNO DEBE
ADQUIRIR CON BASE AL DESARROLLO DE LA UNIDAD
Conocimiento de la estructura de la computadora y compresión de su funcionalidad. Así
como los elementos que entorno a un equipo de cómputo pueden manejarse.
CAMPO DE APLICACIÓN PROFESIONAL
Los conceptos básicos ayudan a tener un panorama más amplio y a saber cuándo o en
qué contexto podemos emplear cada uno de ellos dando oportunidad de desempeñarse
en diversas áreas.
MATERIAL DE APOYO ACADÉMICO
Notas sobre el curso
Videos sobre los principales conceptos
Programas educativos para computadoras
Uso de plataforma Moodle
Presentaciones Power Point
MODALIDADES DE EVALUACIÓN
CRITERIOS
Examen departamental
Tareas
Prácticas
Participaciones y exposición
Exámenes parciales
20 %
20 %
20 %
20 %
20 %
PERFIL DOCENTE
El docente de esta materia deberá ser un profesionista con formación en las
áreas de la computación, comunicaciones o informática; capaz de motivar a la
investigación y creación de conocimiento, con habilidades para transmitir sus
conocimientos y enseñar de forma interactiva propiciando en los alumnos el autoaprendizaje.