Fichas de asignaturas 2008-09
CÓDIGO | NOMBRE | |
Asignatura | 1710009 | ANÁLISIS Y DISEÑO DE ALGORITMOS II |
Descriptor | ANALYSIS AND DESIGN OF ALGORITHMS II | |
Titulación | 1710 | INGENIERÍA TÉCNICA EN INFORMÁTICA DE GESTIÓN |
Departamento | C137 | LENGUAJES Y SISTEMAS INFORMATICOS |
Curso | 2 | |
Duración (A: Anual, 1Q/2Q) | 2Q | |
Créditos ECTS | 3,5 |
Créditos Teóricos | 3 | Créditos Prácticos | 1,5 | Tipo | Troncal |
Para el curso | 2007-08: | Créditos superados frente a presentados | 91.5% | Créditos superados frente a matriculados | 60.5% |
- Análisis y síntesis - Razonamiento abstracto - Pensamiento crítico - Resolución de problemas - Planificación y organización - Comunicación y trabajo en equipo - Expresión oral y escrita - Preparación y presentación de documentación técnica
Cognitivas(Saber):
- Conocer las principales técnicas de diseño de algoritmos - Conocer los algoritmos paradigmáticos de las distintas técnicas - Conocer los algoritmos fundamentales de la biblioteca STL - Conocer algunas aplicaciones de los algoritmos explicados en clase a problemas reales
Procedimentales/Instrumentales(Saber hacer):
- Diseñar y analizar algoritmos empleando distintas técnicas - Distinguir, para problemas sencillos, qué técnica de diseño es la más apropiada para su resolución
Actitudinales:
- Apreciar las ventajas del empleo de diversas herramientas de software libre. - Valorar la importancia de consultar con soltura bibliografía y otros materiales en lengua inglesa. - Estar dispuesto a buscar y contrastar información de diversas fuentes de manera independiente. - Ser consciente de la necesidad de abordar nuevos problemas y evaluar posibles soluciones con espíritu crítico - Apreciar las ventajas de trabajar cooperativamente en pequeños grupos, comunicando ideas con claridad y rigor
Adquirir las competencias específicas reseñadas.
Teoría: Diseño de algoritmos. 1. Algoritmos de divide y vencerás. 1.1. Esquema general. 1.2. Reducción: búsqueda binaria y potencia rápida. 1.3. Equilibrado: ordenación por fusión. 1.4. Partición: ordenación rápida. 2. Algoritmos devoradores. 2.1. Esquema general. 2.2. El problema del cambio de moneda. 2.3. El problema de la mochila. 2.4. El problema del árbol de expansión mínimo. 2.5. Caminos mínimos desde un vértice a todos los demás. 3. Programación dinámica. 3.1. Diseño descendente: funciones con memoria. 3.2. Diseño ascendente: tabla de subproblemas resueltos. 3.3. Ejemplos numéricos. 3.4. El principio de optimalidad. 3.5. El problema del cambio de moneda. 3.6. El problema de la mochila. 3.7. Caminos mínimos entre todas las parejas de vértices. 3.8. Clausura reflexiva y transitiva. 4. Exploración en grafos. 4.1. Ordenación topológica. 4.2. Búsqueda con retroceso. 4.3. Ramificación y acotación. Prácticas: Programación y análisis híbrido de algoritmos. 1. Algoritmos de divide y vencerás. 1.1. Potencia rápida de una matriz. 1.2. Ordenación por fusión frente a ordenación rápida. 1.3. Influencia del umbral. 2. Algoritmos devoradores. 2.1. Simulación del reintegro en un cajero automático. 2.2. Trazado de líneas de comunicación de coste mínimo. 3. Programación dinámica. 3.1. El problema de la mochila discreta. 3.2. Planificación de rutas por carretera de coste mínimo. 4. Exploración en grafos. 4.1. El problema de las n damas. 4.2. El problema de asignación.
1. Resolución de problemas seleccionados del primer tema 2. Resolución de problemas seleccionados del segundo tema 3. Resolución de problemas seleccionados del tercer tema 4. Resolución de problemas seleccionados del cuarto tema
Se empleará una metodología cuyo objetivo es lograr el aprendizaje a través de la resolución de problemas. Las clases correspondientes a los créditos teóricos constarán, fundamentalmente, de sesiones de resolución de problemas propuestos con antelación en las que los alumnos podrán emplear cuantos materiales estimen convenientes. Los alumnos deberán primero intentar resolver los problemas por sí mismos, para luego trabajar por parejas, explicándose mutuamente la solución obtenida e intentando encontrar errores en la solución del compañero, o bien, intentando llegar juntos a una solución. Posteriormente, las soluciones se pondrán en común en grupo y se invitará a su exposición. El objetivo es fomentar el trabajo cooperativo, el espíritu crítico y la comunicación. Se hará especial hincapié en la necesidad de comprobar la corrección de la solución final obtenida y su bondad respecto a distintos criterios, al objeto de fomentar el espíritu crítico. El profesor expondrá los conocimientos teóricos y técnicos necesarios bajo demanda, conforme los alumnos los requieran para resolver los problemas planteados, limitándose a actuar de guía en el proceso de aprendizaje. El alumno es responsable de su propio aprendizaje. No obstante, el profesor realizará al principio de cada tema una breve introducción de sus aspectos principales y de dónde encontrar información adicional, proporcionando diversos materiales como transparencias, resúmenes, gráficas y programas de computadora a lo largo del curso. Las clases prácticas complementan los contenidos de la parte teórica. Se proporcionarán enunciados de las prácticas y ejercicios que se desarrollarán en el laboratorio a lo largo del curso. Tanto las clases teóricas como las prácticas se servirán del campus virtual como apoyo para la docencia. Estarán disponibles herramientas de comunicación como foros especializados, tutorías electrónicas privadas y correo electrónico, así como diversos contenidos en formato digital.
Nº de Horas (indicar total): 87,5
- Clases Teóricas: 20
- Clases Prácticas: 13
- Exposiciones y Seminarios: 6
- Tutorías Especializadas (presenciales o virtuales):
- Colectivas:
- Individules:
- Realización de Actividades Académicas Dirigidas:
- Con presencia del profesorado: 39
- Sin presencia del profesorado: 48,5
- Otro Trabajo Personal Autónomo:
- Horas de estudio: 30
- Preparación de Trabajo Personal: 9,5
- ...
- Realización de Exámenes:
- Examen escrito: 9
- Exámenes orales (control del Trabajo Personal):
|
ELECCIÓN DEL SISTEMA DE EVALUACIÓN Para la primera convocatoria se dispone de dos sistemas de evaluación diferentes: evaluación continua y evaluación final. Para el resto de convocatorias, dado que ya no hay docencia, se utilizará exclusivamente la evaluación final. No se guardará ningún tipo de calificación parcial entre convocatorias. Durante el primer mes del curso los alumnos que lo deseen deberán solicitar explícitamente acogerse al sistema de evaluación continua, a través de una consulta electrónica que se habilitará en el campus virtual. En caso de no hacerlo, se entenderá que optan por evaluación final. No obstante, los profesores recomiendan, siempre que sea posible, acogerse al sistema de evaluación continua. Transcurrido este periodo, el alumno que haya optado por el sistema de evaluación continua no podrá cambiar al sistema de evaluación final salvo por causas sobrevenidas, justificadas documentalmente, que le imposibiliten la asistencia a las clases y que sean comunicadas por correo electrónico al profesor coordinador en un plazo de quince días naturales desde que surja tal imposibilidad. A continuación se establecen las causas reconocidas y la justificación documental exigible: 1. Problemas de salud: documento expedido por un facultativo médico 2. Contrato de trabajo: alta en la seguridad social y documento acreditativo donde figure el periodo y el horario 3. Contrato de becario: documento acreditativo donde figure el periodo y el horario CÓDIGOS DE LAS DISTINTAS CALIFICACIONES 1. NEC: nota de evaluación continua 2. NET: nota del examen de teoría 3. NPR: nota de prácticas 4. NFT: nota final de teoría 5. NFA: nota final de la asignatura SISTEMA DE EVALUACIÓN FINAL El sistema de evaluación final consta de dos componentes: 1. Examen final de teoría 2. Memoria de prácticas y defensa El examen final de teoría será un examen escrito que se realizará de acuerdo con las convocatorias oficiales de exámenes finales que establecen los Estatutos de la Universidad de Cádiz y que el centro publica con la debida antelación. La calificación del examen final de teoría (NET) se realizará en una escala de 0 a 10. Los alumnos deberán presentar una memoria final de prácticas a través del campus virtual en las fechas indicadas por el profesor. La calificación final de la asignatura se obtiene de la siguiente forma: NFT = NET si NPR = APTO o NFT < 5 NFA = NFT si no NFA = 4 SISTEMA DE EVALUACIÓN CONTINUA El sistema de evaluación continua consta de dos componentes: 1. Evaluación continua 2. Memorias de prácticas y defensa La calificación final de la asignatura se obtiene de la siguiente forma: NFT = NEC si NPR = APTO o NFT < 5 NFA = NFT si no NFA = 4 A lo largo del curso se realizarán varios controles. A cada control se dedicará una sesión de control seguida de su correspondiente sesión de coevaluación. Estas sesiones tendrán lugar durante las propias clases de teoría, en fechas publicadas con suficiente antelación. En cada sesión de coevaluación los alumnos deberán calificar, bajo la supervisión del profesor, los ejercicios de dos compañeros elegidos al azar correspondientes al control previo. Para ello, el profesor presentará una solución canónica y los criterios de corrección a emplear. La asistencia a las sesiones de control y coevaluación es obligatoria. - Si un alumno no asiste a una sesión de control o de coevaluación, su control se calificará con 0. - Si tras revisar el resultado de una coevaluación los profesores detectan negligencia o fraude, el control del alumno corrector se calificará con 0. La calificación de la evaluación continua (NEC) será la correspondiente, en una escala de 0 a 10, a la media aritmética de las calificaciones de los controles que la integran, siempre que se cumplan los requisitos de asistencia indicados. La presentación de memorias parciales por cada práctica a través del campus virtual en las fechas indicadas por el profesor es obligatoria. - Si un alumno no presenta alguna de las memorias, obtendrá un NO APTO en su NPR. NORMAS COMUNES PARA AMBOS SISTEMAS La calificación de las prácticas (NPR) será APTO o NO APTO. Sólo se corregirán las memorias de aquellos alumnos con NFT >= 5. Los alumnos podrán ser convocados para la defensa de sus prácticas en determinadas fechas indicadas por el profesor. A dicha defensa deberá acudir con una copia impresa de la memoria (o memorias parciales, en el caso de evaluación continua) entregada electrónicamente. El desconocimiento de las cuestiones planteadas implicará que NPR = NO APTO. CRITERIOS DE EVALUACIÓN Entre los criterios de evaluación, cabe destacar que los profesores valorarán no sólo la corrección y eficiencia de las soluciones presentadas, sino también la claridad y elegancia de su desarrollo, aspectos éstos en los que se incidirá durante todo el curso.
Bibliografía básica. [1] Brassard, Gilles y Bratley, Paul. Fundamentos de algoritmia. Prentice-Hall. 1997. [2] Cormen, Thomas H.; Leiserson, Charles E.; Rivest, Ronald L. y Stein, Clifford. Introduction to algorithms. MIT Press. 2ª ed. 2001. [3] Johnsonbaugh, Richard y Schaefer, Marcus. Algorithms. Prentice-Hall. 2004. [4] Kleinberg, Jon y Tardos Éva. Algorithm Design. Addison-Wesley. 2005. [5] Levitin, Anany V. Introduction to the design and analysis of algorithms. Addison-Wesley. 2ª ed. 2007. [6] Martí Oliet, Narciso; Ortega Mallén, Yolanda y Verdejo López, José A. Estructuras de datos y métodos algorítmicos. Ejercicios resueltos. Prentice-Hall. 2004. [7] Neapolitan, Richard y Naimipour, Kumarss. Foundations of algorithms using C++ pseudocode. Jones and Bartlett. 3ª ed. 2004. [8] Sedgevick, Robert. Algorithms in C++. Parts 1-4. Fundamentals. Data Structures. Sorting. Searching. Addison-Wesley. 3ª ed. 1999. [9] Sedgevick, Robert. Algorithms in C++. Part 5. Graph algorithms. Addison-Wesley. 3ª ed. 2002. [10] Skiena, Steven S. The algorithm design manual. Springer. 2008. Bibliografía complementaria [1] Aho, Alfred; Hopcroft, John y Ullman, Jeffrey. The design and analysis of computer algorithms. Addison-Wesley. 1974. [2] Baase, Sara y Van Gelder, Allen. Computer algorithms. Introduction to design and analysis. Addison-Wesley. 3ª ed. 2000. [3] Brassard, Gilles y Bratley, Paul. Algorítmica. Concepción y análisis. Masson. 1990. [4] Horowitz, Ellis y Sahni, Sartaj. Fundamentals of computer algorithms. Pitman. 1978. [5] Manber, Udi. Introduction to algorithms. A creative approach. Addison-Wesley. 1989. [6] Martí Oliet, Narciso; Segura Díaz, Clara M. y Verdejo López, José A. Especificación, derivación y análisis de algoritmos. Prentice-Hall. 2007. [7] McHugh, James A. Algorithmic graph theory. Prentice-Hall. 1990. [8] Parberry, Ian y Gasarch, William. Problems on algorithms. http://www.eng.unt.edu/ian/books/free/poa.pdf. 2002. [9] Stroustrup, Bjarne. The C++ programming language. Special edition. Addison-Wesley. 2000. [10] Wilf, Herbert S. Algorithms and complexity. A. K. Peters. 2ª ed. 2002. Bibliografía especializada de consulta [1] Garey, Michael R. y Johnson, David S. Computers and intractability. A guide to the theory of NP-completeness. W. H. Freeman. 1979. [2] Graham, Ronald L.; Knuth, Donald E. y Patashnik, Oren. Concrete mathematics. A foundation for Computer Science. Addison-Wesley. 2ª ed. 1994. [3] Knuth, Donald E. The art of computer programming. Volume I. Fundamental algorithms. Addison-Wesley. 3ª ed. 1997. [4] Knuth, Donald E. The art of computer programming. Volume II. Seminumerical algorithms. Addison-Wesley. 3ª ed. 1997. [5] Knuth, Donald E. The art of computer programming. Volume III. Sorting and searching. Addison-Wesley. 2ª ed. 1997. [6] Sedgevick, Robert y Flajolet, Philippe. An introduction to the analysis of algorithms. Addison-Wesley. 1996.
Pulse aquí si desea visionar el fichero referente al cronograma sobre el número de horas de los estudiantes.
El presente documento es propiedad de la Universidad de Cádiz y forma parte de su Sistema de Gestión de Calidad Docente.