Anda di halaman 1dari 24

Teora de Algoritmos

2o curso de Ingeniera Informtica

Jos Luis Verdegay


Departamento de Ciencias de la Computacin e Inteligencia Artificial http://decsai.ugr.es/verdegay

Horarios y duracin de la asignatura


Grupo A
4 horas de teora y 2 de prcticas por semana. Durante 15 semanas

Los grupos de prcticas homogeneos habr que pasarselos, ya organizados, a los Profesores (David A. Pelta).

Horarios y duracin de la asignatura


Grupo B
4 horas de teora y 2 de prcticas por semana. Durante 15 semanas

Los grupos de prcticas homogeneos habr que pasarselos, ya organizados, a los Profesores (David A. Pelta).

Temas y objetivos de la asignatura


Basados en la recomendacin IEEE-ACM Computing Curricula 2001 para Computer Science la asignatura de Metodologa de la Programacin I junto a la asignatura Teora de Algoritmos conforman la troncalidad de Metodologa y Tecnologa de la Programacin en los planes de estudios de Informtica en la Universidad de Granada. Considerando las recomendaciones del CC2001 y los descriptores de la materia troncal concernientes a la parte de tecnologa de la programacin, podemos considerar que los temas ms importantes y sus objetivos en la asignatura son los siguientes

Temas y objetivos
AL1, Anlisis bsico de Algoritmos
Temas a considerar
Anlisis asinttico de complejidad en media y en el peor caso. Diferencias entre el mejor caso, el peor caso y el caso promedio Notaciones O Mayscula, o minscula, omega y theta Clases de complejidad Medidas empricas de eficiencia Equilibrio en la eficiencia en tiempo y en espacio Relaciones de recurrencia para analizar algoritmos recursivos

Temas y objetivos
AL2, Estrategias algoritmicas
Temas a considerar
Algoritmos de fuerza bruta (enumerativos, combinatorios) Algoritmos greedy Divide y venceras Backtracking Branch-and-bound Heursticas Emparejamiento de patrones y algoritmos sobre texto Algoritmos de aproximacin numrica.

Temas y objetivos
Objetivos Explicar el uso de la notaciones O mayscula, omega y theta para describir la cantidad de trabajo realizada por un algoritmo. Uso de la notacin O mayscula, omega y theta para dar lmites en tiempo y espacio a la complejidad de un algoritmo. Determinar la complejidad en tiempo y espacio de algoritmos simples. Deducir relaciones de recurrencia para la complejidad en tiempo de algoritmos recursivos. Resolver relaciones de recurrencia elementales Describir las deficiencias de los algoritmos de fuerza bruta.

Temas y objetivos
Objetivos Identificar, para cada uno de los tipos de algoritmos, un ejemplo de la vida cotidiana que ejemplifique el concepto bsico del mismo. Implementar un algoritmo greedy para resolver un problema apropiado. Implementar un algoritmo divide-y-vencers para resolver un problema apropiado. Usar backtracking para resolver un problema tal como recorrer un puzzle. Describir varios problemas con su correspondiente solucin heurstica. Usar aproximacin numrica para resolver otro tipo de problemas tales como obtener las races de un polinomio.

Programa de la asignatura
Capitulo 1. La Eficiencia de los Algoritmos. Planteamiento General. Introduccin histrica al Anlisis de Algoritmos. Tiempo de ejecucin. Notaciones para la Eficiencia de los Algoritmos. Reglas tericas y prcticas para el calculo de la eficiencia. Anlisis de algoritmos elementales Resolucin de Recurrencias Asintticas. Induccin. Mtodo de la funcin caracterstica Capitulo 2. Algoritmos Divide y Vencers. Divide y Vencers y Algoritmos Divide y Vencers. Determinacin del umbral. Algoritmos de Bsqueda Divide y Vencers. Algoritmos Divide y Vencers para la Ordenacin. Otras Aplicaciones de la Tcnica Divide y Vencers. Multiplicacin de matrices. El problema de la lnea del horizonte.

Programa de la asignatura
Capitulo 3. Algoritmos Greedy. El Enfoque Greedy. Fundamentos tericos. Algoritmos Greedy para Grafos. Definiciones. Algoritmos para el rbol Generador Minimal de un grafo. Algoritmo de Dijkstra. El Problema del rbol de Steiner. Heursticas Greedy. El problema del Viajante de Comercio. El problema de la Mochila. El problema del Coloreo de un Grafo. Capitulo 4. Algoritmos Basados en Programacin Dinmica. Programacin Dinmica y Diseo de Algoritmos. Principio de Optimalidad. Algoritmos Elementales que usan la Programacin Dinmica. Algoritmos de Camino Mnimo. El Problema de la Mochila. El Problema del Viajante de Comercio. Multiplicacin encadenada de matrices. Determinacin de la Secuencia de mayor longitud

Programa de la asignatura
Capitulo 5. Algoritmos para la Exploracin de Grafos. Grafos Implcitos. rboles para Juegos. Algoritmos de solucin para juegos elementales. Tcnica Bactracking. Mtodos Branch-Bound. Espacios de estados. Eficiencia de los algoritmos de exploracin de grafos. El problema de las 8 reinas. El problema de la suma de subconjuntos. Algoritmos para la resolucin del problema de las N reinas. Suma de Subconjuntos. Capitulo 6. Otras Metodologas Algortmicas. Algoritmos de Precondicionamiento y Transformacin del Dominio Introduccin a los algoritmos heursticos para optimizacin.

Objetivos
a) Dominar los mtodos de clculo de la eficiencia terica de los algoritmos b) Conocer en profundidad las tcnicas de diseo de algoritmos y c) Saber asociar a un problema el mejor algoritmo para su resolucin

Teora de Algoritmos
Temario de prcticas: Las prcticas sern de tres tipos a) Pizarra (eficiencias, recurrencias, ) b) Laboratorio, se desarrollaran en equipos de 2 personas y tratarn sobre Eficiencia de algoritmos, implementacin de algoritmos DV, AG, PD, BB, BT (2 3) c) Prcticas voluntarias que se sugerirn

Teora de Algoritmos
Sistema de evaluacin Examen escrito de teora y problemas (80%) El trabajo prctico (20%). Prcticas opcionales (influyen positivamente en la nota final) La nota de prcticas se podr guardar hasta septiembre si la nota es superior a 8/10

Teora de Algoritmos
Bibliografa bsica: Jos Luis Verdegay: Curso de Teora de Algoritmos
Librera Fleming (2004)

Teora de Algoritmos
Bibliografa de apoyo: G. Brassard y P. Bratley: Fundamentos de Algoritmia. Prentice Hall T.H. Cormen, C.E. Leiserson y R. L. Rivest: Introduction to Algorithms. The MIT Press E. Horowitz y S. Sahni: Fundamentals of Computer Algorithms. Comp Science Press

Teora de Algoritmos
Bibliografa de consulta: Consulta A. V. Aho, J.E. Hopcroft y J.D. Ullman: Data Structures and Algorithms. Addison Wesley Pub. Co. (1982) S. Baase: Computer Algorithms. Introduction to Design and Analysis. Addison Wesley (1988) G. Brassard y P. Bratley: Fundamentos de Algoritmia.Prentice Hall (1997) D. Harel: Algorithmics (The spirit of computing). Addison Wesley Pub. Co. (1987) S. S. Kiena: The Algorithm Design Manual. Springer Verlag (1998) D.E. Knuth. El Arte de Programar Ordenadores. Algoritmos Fundamentales.Vol 1. Revert, 1985. D.E. Knuth. El Arte de Programar Ordenadores. Clasificacin y Bsqueda.Vol 3. Revert, 1987. U. Manber. Introduction to Algorithms. Addison-Wesley, 1989. J.J. McConnell: Analysis of Algorithms (an active learning approach). Jones and Bartlett Pub. (2004) I. Parberry. Problems on Algorithms. Prentice Hall (1995). R. Sedgewick. Algorithms. Second edition. Addison-Wesley, 1988. R. Sedgewick y P. Flajolet. An Introduction to Analysis of Algorithms. Addison-Wesley, 1997. J.D. Smith: Design and Analysis of Algorithms. PWS-KENT Publishing Co. (1989) G. Valiente: Algorithms on Trees and graphs. Springer (1998).

Modo de aprobar la asignatura


Estudiar todos los das lo explicado en clase Contrastar y ampliar los apuntes de clase con el libro de la asignatura y con otros que se irn recomendando Hacer los trabajos voluntarios que se irn proponiendo Asistir a tutoras Ojo,que no son clases particulares! Hay un horario oficial de tutoras, pero se me puede localizar a cualquier hora En http://decsai.ugr.es/~verdegay/web estaran colgados todos los materiales docentes interesantes: transparencias, apuntes, bibliografa, links, etc., dentro de la pagina de la asignatura En cuanto les habilite sus cuentas, tendrn acceso a ese material, y podrn rellenar sus fichas.

Pagina de la Asignatura

Pagina de la Asignatura

Pagina de la Asignatura

Resultados del ltimo ao


El 75 % de los presentados en Febrero aprobaron la asignatura

Resultados del ltimo ao


El 32 % de los presentados en Septiembre aprobaron la asignatura

Jos Luis Verdegay


Catedrtico
Departamento de Ciencias de la Computacin e Inteligencia Artificial Despacho 7 Tutoras L,M,Mi. De 10 a 12; e-mail: verdegay@decsai.ugr.es

Anda mungkin juga menyukai