Análisis de Algoritmos - Profesor ROBERTO OSORNIO SOTO

Anuncio
INSTITUTO POLITÉCNICO NACIONAL
SECRETARÍA ACADÉMICA
DIRECCIÓN DE ESTUDIOS PROFESIONALES EN INGENIERÍA Y
CIENCIAS FÍSICO MATEMÁTICAS
PROGRAMA SINTÉTICO
CARRERA:
Ingeniería en Computación
ASIGNATURA:
Análisis de Algoritmos
SEMESTRE:
Quinto
OBJETIVO GENERAL:
El alumno resolverá problemas de procesamiento, diseñando algoritmos, aplicando técnicos de programación y
estructuras de datos.
CONTENIDO SINTÉTICO:
I. Introducción.
II. Teoría de la Computación.
III. Tipos de datos Abstractos y Estructuras de Datos.
IV. Técnicas, Diseño y Análisis de los Algoritmos, Algoritmos Geométricos.
METODOLOGÍA:
Preparación y discusión de los temas por parte de los alumnos así como la resolución de problemas bajo la
supervisión del profesor. Trabajo en equipo. A su vez el uso de material didáctico y presentaciones en Power Point
para un mejor y mayor avance en las unidades propuestas.
EVALUACIÓN Y ACREDITACIÓN:
Participación en actividades de clase, presentación y calidad de trabajos extra clase, aplicación de tres exámenes
parciales o departamentales durante el semestre, cubrir y entregar la totalidad de las practicas de laboratorio. La
calificación final será el promedio de las evaluaciones anteriores, siempre y cuando el alumno cumpla con lo
estipulado en la reglamentación institucional.
BIBLIOGRAFÍA:
1. Abellanas M. Lodares D., Análisis de Algoritmos y Teoría de Grafos, Macrobit Editores, México, 1998. p 1-256.
2. Aho, Alfred, Hopcroft, John and Ullman, Jeffrey. Data Structures and Algorithms. Ed. Addison-Wesley Pub.
Co.1998. pp1-13, 29-50, 105-133, 205-218,253-257.
3. Drozdek Adam, Data Structures and Algorithms in C++, 2a. ed. Brooks Cole,USA, 2004. pp52-76, 215-300, 599644, 728.
4. Martin John C., Lenguajes formales y teoría de la Computación, 3ª. Ed., Mc Graw Hil, México, 2003. p86-110,
229-316.
ESCUELA: Escuela Superior de Ingeniería Mecánica ASIGNATURA: Análisis de Algoritmos
y Eléctrica.
SEMESTRE: Quinto
INSTITUTO POLITÉCNICO NACIONAL
SECRETARÍA ACADÉMICA
DIRECCIÓN DE ESTUDIOS PROFESIONALES EN INGENIERÍA Y
CIENCIAS FÍSICO MATEMÁTICAS
CARRERA: Ingeniería en Computación
OPCIÓN:
COORDINACIÓN: Academia de Computación
DEPARTAMENTO: Ingeniería en Computación
CLAVE: CLA027
CRÉDITOS: 7.5
VIGENTE: Agosto 2005
TIPO DE ASIGNATURA: Teórico-Practica
MODALIDAD: Escolarizada
TIEMPOS ASIGNADOS
HORAS/SEMANA/TEORÍA:
HORAS/SEMANA/PRÁCTICA:
3.0
1.5
HORAS/SEMESTRE/TEORÍA:
HORAS/SEMESTRE/PRÁCTICA:
54.0
27.0
HORAS/TOTALES:
81.0
PROGRAMA ELABORADO O ACTUALIZADO POR:
Academia de Computación de ESIME Culhuacan
REVISADO POR: Subdirección Académica de ESIME Culhuacan
APROBADO POR: Consejo Técnico Consultivo Escolar de ESIME
Culhuacan.
Ing. Ernesto Mercado Escutia
AUTORIZADO POR: Comisión de Planes y
Programas del Consejo General Consultivo del
IPN
INSTITUTO POLITÉCNICO NACIONAL
SECRETARÍA ACADÉMICA
DIRECCIÓN DE ESTUDIOS PROFESIONALES EN INGENIERÍA Y
CIENCIAS FÍSICO MATEMÁTICAS
ASIGNATURA: Análisis de Algoritmos
CLAVE
CLA027
HOJA: 2 DE 8
FUNDAMENTACIÓN DE LA ASIGNATURA
El alumno resolverá problemas de procesamiento, diseñando algoritmos, aplicando técnicos de programación y
estructuras de datos.
Con la evolución de los lenguajes de programación, las computadoras y sus aplicaciones funcionan de acuerdo a la
forma en que son programadas, por lo que, la asignatura de Análisis de Algoritmos que trata paso a paso y
matemáticamente la eficiencia de los procesos de trabajo y la administración de los recursos y datos, se vuelve
esencial en el área de la computación.
Así que desde sus inicios su objetivo siempre ha consistido en el ahorro de espacio y tiempo para la ejecución de
cálculos y ha dado origen a nuevas formas de resolver problemas de mayor dificultad.
Además en todas las asignaturas consecuentes que tengan relación sobre el uso de las computadoras deberá existir
el antecedente que permita resolver de una forma ordenada y metodológica la programación u organización, lo cual,
se lleva a cabo mediante el Análisis de Algoritmos.
Por consiguiente los ejemplos y técnicas comprendidas en el programa propuesto podrán ser aplicables a los
materiales colaterales, y a las materias ulteriores como Sistemas Operativos, Sistemas Distribuidos y Programación
Lógica entre otras.
Las Matemáticas discretas, la Teoría de Autómatas y los Compiladores son antecedentes de esta asignatura.
OBJETIVO DE LA ASIGNATURA
El alumno resolverá algoritmos, aplicando técnicas de programación y estructuras de datos. Diseñando algoritmos
resolverá problemas de procesamiento.
INSTITUTO POLITÉCNICO NACIONAL
SECRETARÍA ACADÉMICA
DIRECCIÓN DE ESTUDIOS PROFESIONALES EN INGENIERÍA Y
CIENCIAS FÍSICO MATEMÁTICAS
ASIGNATURA: Análisis de Algoritmos
No. UNIDAD
I
CLAVE
HOJA: 3 DE 8
CLA027
NOMBRE: Introducción
OBJETIVOS PARTICULARES DE LA UNIDAD
El alumno modelará algoritmos.
No.
TEMA
1.1
1.1.1
1.1.2
1.1.3
T
1.5
HORAS
P
3.0
TEMAS
Algoritmos.
Algoritmos, noción y conceptos.
Origen y desarrollo de los algoritmos.
Clasificación de los algoritmos.
1.2
1.2.1
1.2.2
1.2.3
1.2.4
Importancia y uso de los algoritmos.
Sintaxis y semántica del lenguaje (GLC).
Secuenciación, selección e iteración
Recursión.
Tipo de datos, tipo de datos abstractos y estructura
de datos.
4.5
3.0
1.3
1.3.1
1.3.2
1.3.3
1.3.4
Solución de problemas.
Conceptos.
Clasificación de problemas.
Técnicas para la solución de problemas.
Problemas, algoritmos y programas
6.0
1.5
12.0
4.5
Subtotal
CLAVE BIBLIOGRÁFICA
EC
1B, 3C, 5C
6.0
ESTRATEGIA DIDÁCTICA
Preparación de los temas por parte del alumno antes de la clase. Desarrollo de trabajos extra clase. Participación
grupal para la solución de problemas en prácticas de laboratorio. Investigación de las definiciones formales.
PROCEDIMIENTO DE EVALUACIÓN
La evaluación será diagnóstica, formativa de aprendizaje constructivo y sumativa.
- Evaluación de los conocimientos teóricos y aplicación de estos, mediante un examen departamental (40%).
- Prácticas y problemas resueltos de acuerdo a la metodología en laboratorio
(20%)
- Investigación y trabajo extra clase (30%)
- Participaciones (10%)
INSTITUTO POLITÉCNICO NACIONAL
SECRETARÍA ACADÉMICA
DIRECCIÓN DE ESTUDIOS PROFESIONALES EN INGENIERÍA Y
CIENCIAS FÍSICO MATEMÁTICAS
ASIGNATURA: Análisis de Algoritmos
No. UNIDAD
II
CLAVE
HOJA: 4 DE 8
CLA027
NOMBRE: Teoría de la Computación
OBJETIVOS PARTICULARES DE LA UNIDAD
El alumno resolverá problemas de programación seleccionando el algoritmo adecuado, de acuerdo a las técnicas
estudiadas y desarrolladas.
No.
TEMA
2.1
2.1.1
2.1.2
2.1.3
2.1.4
2.1.5
HORAS
P
3.0
3.0
3.0
9.0
3.0
12.0
9.0
Teoría de la computación.
Tesis Church-Turing.
Máquinas de Turing.
Teorema de la recursión.
Problemas.
Complejidad de algoritmos.
2.2
2.2.1
2.2.2
2.2.3
Introducción al análisis de algoritmos.
Análisis de algoritmos.
Importancia del análisis de algoritmos.
Fundamentos matemáticos.
Análisis asintótico.
2.3
2.3.1
2.3.2
2.3.2.1
2.3.2.2
2.3.2.3
2.3.3
2.3.4
Eficacia y eficiencia.
Notación de la complejidad.
Introducción a la complejidad de algoritmos.
Notación O.
Otras notaciones.
Análisis de estructuras de control, secuencias, ciclos
y llamadas.
Análisis de estructuras de control, secuencias, ciclos
y llamadas recursivas.
Técnicas de análisis.
Relaciones de recurrencia.
2.3.5
2.3.6
T
3.0
TEMAS
Subtotal
CLAVE BIBLIOGRÁFICA
EC
1B, 2C, 3C
9.0
ESTRATEGIA DIDÁCTICA
Preparación de los temas por parte del alumno antes de la clase con la guía del profesor. Elaboración grupal de
presentaciones en power point con la explicación de las técnicas estudiadas. Investigación de las definiciones
formales actuales.
PROCEDIMIENTO DE EVALUACIÓN
La evaluación será diagnóstica, formativa de aprendizaje constructivo y sumativa.
- Evaluación de los conocimientos teóricos y aplicación de estos, mediante un examen departamental (40%).
- Prácticas y problemas resueltos de acuerdo a la metodología en laboratorio
(30%)
- Investigación y trabajo extra clase (10%)
- Trabajo en grupo (20%)
ASIGNATURA: Análisis de Algoritmos
CLAVE
CLA027
HOJA: 5 DE 8
INSTITUTO POLITÉCNICO NACIONAL
SECRETARÍA ACADÉMICA
DIRECCIÓN DE ESTUDIOS PROFESIONALES EN INGENIERÍA Y
CIENCIAS FÍSICO MATEMÁTICAS
No. UNIDAD
III
NOMBRE: Tipos de Datos Abstractos y Estructuras de Datos
OBJETIVOS PARTICULARES DE LA UNIDAD
El alumno seleccionando la estructura de los datos abstractos, solucionará problemas en la programación de
algoritmos.
No.
TEMA
3.1
3.1.1
3.1.2
3.1.3
3.1.4
T
6.0
HORAS
P
3.0
Estructuras de datos y diseño de algoritmos.
Estructura de datos lineales.
Estructura de datos no-lineales.
Procedimientos recursivos.
Estructura de datos recursivos.
3.2
3.2.1
3.2.2
3.2.3
3.2.4
Tipo de datos abstractos.
Registros, arreglos, conjuntos.
Pilas, colas y listas.
Diccionarios.
Árboles.
6.0
3.0
3.3
3.3.1
3.3.2
3.3.3
3.3.3.1
3.3.3.2
3.3.3.3
3.3.3.4
Operaciones con las estructuras de datos
Inserción y eliminación.
Búsquedas.
Ordenación e intercalamiento.
Método del mínimo.
Método de la burbuja.
Método del Quicksort.
Método de mezclas.
3.0
1.5
15.0
7.5
TEMAS
CLAVE BIBLIOGRÁFICA
EC
2C, 3C, 6C
3.0
ESTRATEGIA DIDÁCTICA
Preparación de los temas por parte del alumno antes de la clase bajo la guía del profesor. Desarrollo de trabajos
extra clase y prácticas de laboratorio sobre los métodos estudiados. Elaboración grupal de presentaciones en
power point con la explicación por parte de alumnos de los métodos estudiados.
PROCEDIMIENTO DE EVALUACIÓN
La evaluación será diagnóstica, formativa de aprendizaje constructivo y sumativa.
- Evaluación de los conocimientos teóricos y aplicación de estos, mediante un examen departamental (40%).
- Prácticas y problemas resueltos de acuerdo a la metodología en laboratorio
(30%)
- Trabajo extra clase (10%)
- Trabajo en grupo (20%)
ASIGNATURA: Análisis de Algoritmos
No. UNIDAD
IV
CLAVE
CLA027
HOJA: 6 DE 8
NOMBRE: Técnicas, Diseño y Análisis de los Algoritmos, Algoritmos
Geométricos.
OBJETIVOS PARTICULARES DE LA UNIDAD
INSTITUTO POLITÉCNICO NACIONAL
SECRETARÍA ACADÉMICA
DIRECCIÓN DE ESTUDIOS PROFESIONALES EN INGENIERÍA Y
CIENCIAS FÍSICO MATEMÁTICAS
El alumno resolverá problemas sobre algoritmos donde la solución es más adecuada, eficiente y óptima.
No.
TEMAS
TEMA
4.1
Técnicas del diseño y análisis para la optimización de
los algoritmos.
4.1.1
Relaciones de recurrencia.
4.1.2
Programación dinámica.
4.1.3
Backtracking.
4.1.4
Divide y vencerás.
4.1.5
El problema de la mochila.
4.2
Algoritmos geométricos.
4.2.1
Búsqueda geométrica.
4.2.2
Inclusión de polígonos.
4.2.3
Problemas de intersecciones.
4.3
Algoritmos de grafos.
4.3.1
Definición y clasificación de los grafos.
4.3.2
Representación en la computadora de los grafos.
4.3.3
Algoritmo de Dijkstra.
4.3.4
Algoritmo de Euler.
4.3.5
Algoritmo de camino mas corto.
4.3.6
Grafos conexos.
4.3.7
Graficas en computadora.
4.4
Análisis asintótico de las funciones.
4.4.1
Complejidad de los algoritmos.
4.4.2
Acotación de problemas.
4.4.3
Transformación de problemas.
4.4.4
Cotas superiores e inferiores.
Subtotal
ESTRATEGIA DIDÁCTICA
T
3.0
HORAS
P
1.5
3.0
1.5
3.0
1.5
3.0
1.5
CLAVE BIBLIOGRÁFICA
EC
3.0
1B, 2C, 4B, 5C
3.0
15.0
6.0
3.0
Preparación de los temas por parte del alumno antes de la clase. Desarrollo de trabajos extra clase y prácticas de
laboratorio sobre los algoritmos estudiados. Elaboración grupal sobre alguna aplicación real de alguna solución
aprendida.
PROCEDIMIENTO DE EVALUACIÓN
La evaluación será formativa de aprendizaje constructivo y sumativa de los siguientes aspectos:
- Participación grupal en la solución de un problema real de acuerdo a eficiencia y optimización (30 %)
- Evaluación de los conocimientos teóricos y aplicaciones mediante un examen departamental (40%).
- Desarrollo de trabajos extra clase y prácticas de laboratorio. (30%)
INSTITUTO POLITÉCNICO NACIONAL
SECRETARÍA ACADÉMICA
DIRECCIÓN DE ESTUDIOS PROFESIONALES EN INGENIERÍA Y
CIENCIAS FÍSICO MATEMÁTICAS
ASIGNATURA: Análisis de Algoritmos
CLAVE: CLA027
HOJA: 7 DE
8
RELACIÓN DE PRÁCTICAS
PRACT.
No.
NOMBRE DE LA PRÁCTICA
UNIDAD
DURACIÓN
LUGAR DE REALIZACIÓN
Todas las prácticas se
llevaran a cabo en el
Laboratorio de Cómputo.
1
Grafo dirigido
I
3.0
2
Grafo TAD
I
1.5
3
Flujo Dijkstra
I
1.5
4
Algoritmo Ford-Fulkerson
I
1.5
5
Problema de la suma y cifrado de
Merckle-Hellman
II
3.0
6
Cifrado de Merckle-Hellman
II
3.0
7
Grafos con incidencias
II
3.0
8
Algoritmo de exploración
III
1.5
9
Algoritmo BFS
III
1.5
10
Algoritmo DFS
III
1.5
11
Combinaciones
III
1.5
12
Recorridos
III
1.5
13
Multiplicación de números grandes
IV
1.5
14
Multiplicación de Karatsuba
IV
1.5
15
Comparaciones de rendimiento
IV
1.5
16
Algoritmos N(p) completos
IV
1.5
Total
27
INSTITUTO POLITÉCNICO NACIONAL
SECRETARÍA ACADÉMICA
DIRECCIÓN DE ESTUDIOS PROFESIONALES EN INGENIERÍA Y
CIENCIAS FÍSICO MATEMÁTICAS
ASIGNATURA: ANÁLISIS DE ALGORITMOS
CLAVE
CLA027
HOJA: 8 DE 8
PERÍODO
1
UNIDAD
I
PROCEDIMIENTO DE EVALUACIÓN
Evaluación de los conocimientos teóricos y aplicación de estos, mediante un examen
departamental (40%).
Prácticas y problemas resueltos de acuerdo a la metodología en laboratorio (20%)
Investigación y trabajo extra clase (30%)
Participaciones (10%)
2
II
Evaluación de los conocimientos teóricos y aplicación de estos, mediante un examen
departamental (40%).
Prácticas y problemas resueltos de acuerdo a la metodología en laboratorio (30%)
Investigación y trabajo extra clase (10%)
Trabajo en grupo (20%)
3
III
Evaluación de los conocimientos teóricos y aplicación de estos, mediante un examen
departamental (40%).
Prácticas y problemas resueltos de acuerdo a la metodología en laboratorio (30%)
Trabajo extra clase (10%)
Trabajo en grupo (20%)
4
IV
Participación grupal en la solución de un problema real de acuerdo a eficiencia y
optimización (30 %)
Evaluación de los conocimientos teóricos y aplicaciones mediante un examen
departamental (40%).
Desarrollo de trabajos extra clase y prácticas de laboratorio. (30%)
C
BIBLIOGRAFÍA
Abellanas M. , Lodares D., Análisis de Algoritmos y teoría de grafos, Macrobit
Editores, México, 1998. p1-256.
CLAVE
1
B
X
2
X
Aho, Alfred, Hopcroft, John and Ullman, Jeffrey. Data structures and Algorithms. Ed.
Addison-Wesley Pub. Co. 1998.pp1-13, 29-50, 105-133, 205-218,253-257.
3
X
Brassard Giles, Bratley P, Fundamentos de Algoritmia, Prentice Hall, 1997 pp42-64,
103-248
4
Drozdek Adam, Data Structures and Algorithms in C++, 2a. ed. Brooks Cole,USA,
2004. pp52-76, 215-300, 599-644, 728.
X
5
X
Knuth Donald E., The Stanford Graphbase : A Platform for Combinatorial Computing,
Addison-Wesley, 1993. pp94-112, 148-167.
6
X
Martin John C., Lenguajes formales y teoría de la Computación, 3ª. Ed., Mc Graw Hil,
México, 2003. pp86-110, 229-316.
INSTITUTO POLITÉCNICO NACIONAL
SECRETARÍA ACADÉMICA
DIRECCIÓN DE ESTUDIOS PROFESIONALES EN INGENIERÍA Y
CIENCIAS FÍSICO MATEMÁTICAS
PERFIL DOCENTE POR ASIGNATURA
1. DATOS GENERALES
ESCUELA: Escuela Superior de Ingeniería Mecánica y Eléctrica Unidad Culhuacan.
CARRERA: Ingeniería en Computación
ÁREA:
BÁSICAS C. INGENIERÍA
SEMESTRE :
D. INGENIERÍA
Quinto
C. SOC. y HUM.
ASIGNATURA: Análisis de Algoritmos
ACADEMIA: Computación
ESPECIALIDAD Y NIVEL ACADÉMICO REQUERIDO: Licenciatura en Ingeniería o Ciencias Físico Matemáticas
2. OBJETIVOS DE LA ASIGNATURA:
El alumno resolverá problemas de procesamiento, diseñando algoritmos, aplicando técnicos de programación y
estructuras de datos.
3. PERFIL DOCENTE:
CONOCIMIENTOS
Experiencia en
programación de alto y
bajo nivel, conocimientos
teóricos de Teoría de
Autómatas, Análisis de
Algoritmos y Estructuras
de Datos.
EXPERIENCIA
PROFESIONAL
HABILIDADES
ACTITUDES
Haber impartido clases,
o
Formación pedagógica.
Dominio de la asignatura.
Tener vocación por la
docencia.
Manejo de grupos.
Honestidad.
Administración de redes.
Comunicación
(Transmisión del
conocimiento).
Ejercicio de la critica
fundamentada.
Programación en algún
lenguaje de computación.
Capacidades de análisis y
síntesis.
Respeto (buena relación
maestro-alumno).
Tolerancia.
Motivación al alumno.
Ética.
Responsabilidad científica.
Espíritu de colaboración.
Superación docente y
profesional.
Compromiso social
ELABORÓ
______________________
Ing. Jorge F. Veloz Ortiz
PRESIDENTE DE LA ACADEMIA DE
COMPUTACIÓN
REVISÓ
AUTORIZÓ
______________________
____________________
M. en C. Alberto Paz Gutiérrez
SUBDIRECTOR ACADÉMICO.
Ing. Ernesto Mercado Escutia
DIRECTOR
FECHA:
Agosto de 2005
Descargar