diseño y análisis de algoritmos - gii 2011/2012

14
Vicerrectorado de Profesorado, Titulaciones, Ordenación Académica, Coordinación y Campus. 1 Última actualización: 18 de julio de 2011 GUÍA DOCENTE DE DISEÑO Y ANÁLISIS DE ALGORITMOS Curso 2011-2012

Upload: grado-en-ingenieria-informatica-urjc

Post on 09-Mar-2015

180 views

Category:

Documents


0 download

DESCRIPTION

Guía docente de la asignatura "Diseño y análisis de algoritmos" de 2º del Grado en Ingeniería Informática de la Universidad Rey Juan Carlos

TRANSCRIPT

Page 1: Diseño y análisis de algoritmos - GII 2011/2012

Vicerrectorado de Profesorado, Titulaciones,

Ordenación Académica, Coordinación y Campus.

1 Última actualización: 18 de julio de 2011

GUÍA DOCENTE DE DISEÑO Y ANÁLISIS DE ALGORITMOS

Curso 2011-2012

Page 2: Diseño y análisis de algoritmos - GII 2011/2012

Vicerrectorado de Profesorado, Titulaciones,

Ordenación Académica, Coordinación y Campus.

2 Última actualización: 18 de julio de 2011

TITULACION: Grado en Ingeniería en Informática

GUIA DOCENTE DE LA ASIGNATURA: Diseño y Análisis de Algoritmos

Profesores

Manuel Rubio Sánchez

Natalia Esteban Sánchez

Belén Sáenz Rubio

Antonio Pérez Carrasco

Coordinador/a de la asignatura: Antonio Pérez Carrasco

I.- Identificación de la asignatura

Tipo Obligatorio

Materia Programación

Período de impartición Curso 2º, cuatrimestre 2º

Nº Créditos 6

Idioma en el que se imparte Español

Departamento Lenguajes y Sistemas Informáticos I

Asignaturas llave

Tasa de éxito Este dato será incluido por el Vicerrectorado de Profesorado, Titulaciones, Ordenación Académica, Coordinación y Campus

Page 3: Diseño y análisis de algoritmos - GII 2011/2012

Vicerrectorado de Profesorado, Titulaciones,

Ordenación Académica, Coordinación y Campus.

3 Última actualización: 18 de julio de 2011

II.- Presentación

La resolución de problemas mediante las tecnologías de computación requiere el diseño de algoritmos que logren aportar una solución válida y satisfactoria para tales problemas, realizando además un uso eficiente de los distintos recursos (tiempo, memoria, etc.).

En esta asignatura se ofrecen los conocimientos relativos al análisis de complejidad de algoritmos basándose en diversas técnicas y en los fundamentos matemáticos de las notaciones asintóticas de funciones que delimitan el crecimiento del empleo de recursos en función del tamaño del problema que se intenta resolver. Por tanto, se instauran las bases para la aplicación de un criterio analítico y objetivo sobre la eficiencia, solvencia y escalabilidad de los algoritmos estudiados.

Por otra parte, existen diversos tipos de problemas para los que se conocen soluciones probadas, eficientes y eficaces, que siguen determinadas directrices basadas en las características propias de los distintos tipos de problemas. Es por ello que se imparten conocimientos acerca de algunas de las más conocidas técnicas algorítmicas para introducir al alumno en el diseño metódico de soluciones ante una diversidad estructurada de problemas.

Se recomienda haber superado satisfactoriamente las asignaturas:

- Matemática discreta y álgebra

- Introducción a la programación

- Estructuras de datos

Durante la asignatura se afrontará la resolución de problemas haciendo uso del lenguaje de programación Java, por lo que se recomienda cursar previamente la asignatura “Programación orientada a objetos” o adquirir conocimientos básicos en este lenguaje por cuenta propia.

III.- Competencias

Competencias transversales

G8. Conocimiento de las materias básicas y tecnologías, que capaciten para el aprendizaje y desarrollo de nuevos métodos y tecnologías, así como las que les doten de una gran versatilidad para adaptarse a nuevas situaciones.

G9. Capacidad para resolver problemas con iniciativa, toma de decisiones, autonomía y creatividad. Capacidad para saber comunicar y transmitir los conocimientos, habilidades y destrezas de la profesión de Ingeniero

Page 4: Diseño y análisis de algoritmos - GII 2011/2012

Vicerrectorado de Profesorado, Titulaciones,

Ordenación Académica, Coordinación y Campus.

4 Última actualización: 18 de julio de 2011

Técnico en Informática.

Competencias específicas

B3. Capacidad para comprender y dominar los conceptos básicos de matemática discreta, lógica, algorítmica y complejidad computacional, y su aplicación para la resolución de problemas propios de la ingeniería.

C6. Conocimiento y aplicación de los procedimientos algorítmicos básicos de las tecnologías informáticas para diseñar soluciones a problemas, analizando la idoneidad y complejidad de los algoritmos propuestos.

E3. Capacidad para evaluar la complejidad computacional de un problema, conocer estrategias algorítmicas que puedan conducir a su resolución y recomendar, desarrollar e implementar aquella que garantice el mejor rendimiento de acuerdo con los requisitos establecidos.

IV.- Contenido

IV. A. Temario de la asignatura

Bloque temático Tema Apartados

I.- Introducción Tema 1. Conceptos básicos Conceptos básicos. Propiedades de los algoritmos.

II.- Análisis de Algoritmos Tema 2. Notaciones asintóticas Notaciones asintóticas principales de complejidad computacional.

Tema 3. Análisis de complejidad Factores de eficiencia: tiempo y espacio. Casos mejor, peor y medio. Análisis de algoritmos iterativos y algoritmos recursivos. Medidas experimentales.

III.- Diseño de Algoritmos Tema 4. Divide y vencerás Definición. Esquema de programación. Análisis de complejidad. Ejemplos clásicos.

Tema 5. Algoritmos voraces Definición. Esquema de programación. Ejemplos clásicos.

Tema 6. Vuelta atrás Problemas de búsqueda en espacios de estados. Técnicas particulares: enumeración, vuelta atrás. Esquemas de programación: todas las soluciones, una solución,

Page 5: Diseño y análisis de algoritmos - GII 2011/2012

Vicerrectorado de Profesorado, Titulaciones,

Ordenación Académica, Coordinación y Campus.

5 Última actualización: 18 de julio de 2011

solución óptima. Detalles de programación eficiente. Ejemplos clásicos.

IV. B. Actividades obligatorias (evaluables):

Prácticas

Prácticas explicadas en los laboratorios informáticos de la Universidad dentro del horario de la asignatura. Cada práctica estará enfocada a afianzar los conocimientos adquiridos en clase sobre un tema concreto de la asignatura. Cada práctica estará puntuada entre 1 y 10. Para conseguir el aprobado en la parte de prácticas deberá obtenerse una nota media mayor o igual que 5.

Pruebas

Exámenes parciales, dentro del horario establecido para la asignatura. El primero de ellos podrá realizar preguntas teóricas y/o prácticas sobre los temas 1, 2 y 3 (temas centrados a dar una visión general de la asigantura y a profundizar en el análisis de la complejidad de algoritmos), mientras que el segundo parcial se centrará en los temas 4,5 y 6, que presentan diversas técnicas de diseño de algoritmos. Para considerar aprobada la parte de las pruebas, deberá obtenerse, tras realizar la media ponderada de ambas pruebas, una nota igual o superior a 5.

V.- Tiempo de trabajo

Clases teóricas 24

Clases prácticas/de resolución de problemas, casos, etc. 12

Prácticas en laboratorios tecnológicos, clínicos, etc. 8

Realización de pruebas 4

Tutorías académicas 12

Actividades relacionadas: jornadas, seminarios, etc. 0

Preparación de clases teóricas 20

Preparación de clases prácticas/problemas/casos 35

Page 6: Diseño y análisis de algoritmos - GII 2011/2012

Vicerrectorado de Profesorado, Titulaciones,

Ordenación Académica, Coordinación y Campus.

6 Última actualización: 18 de julio de 2011

Preparación de pruebas 35

Total de horas de trabajo del estudiante 150

VI.- Metodología y plan de trabajo

Clases teóricas

Periodo Contenidos

Semana 1 Tema 1. Introducción

Semana 2 Tema 2. Notaciones asintóticas

Semanas 3 a 5 Tema 3. Análisis de complejidad

Semamas 6 a 8 Tema 4. Divide y vencerás

Semanas 8 a 10 Tema 5. Algoritmos voraces

Semanas 11 a 14 Tema 6. Vuelta atrás

Prácticas/de resolución de problemas, casos, etc.

Periodo Contenidos

Semanas 3 a 5 (una sesión)

Práctica 1

Semamas 6 a 8 (una sesión)

Práctica 2

Semanas 8 a 10 (una sesión)

Práctica 3

Semanas 11 a 13 (una sesión)

Práctica 4

Semanas 14 y 15 (completas, salvo una sesión)

Problemas de todos los temas

Laboratorios

Periodo Contenidos

Semanas 3 a 5 Práctica 1

Semanas 6 a 8 Práctica 2

Semanas 8 a 10 Práctica 3

Semanas 11 a 13 Práctica 4

Page 7: Diseño y análisis de algoritmos - GII 2011/2012

Vicerrectorado de Profesorado, Titulaciones,

Ordenación Académica, Coordinación y Campus.

7 Última actualización: 18 de julio de 2011

Tutorías académicas

Periodo

Completo Tutorías personales o en grupo, en horarios a determinar por el profesor y también con cita previa.

Pruebas

Fecha Contenidos

Semana 6 Primer parcial, temas 1,2,3

Semana 14 Segundo parcial, temas 4,5,6

Cronograma

Planificación en semanas Bloque temático / Temas Sesiones

1 Presentación ST

I/1 ST

2 II/2 ST,SRP

II/2 ST,SRP

3 II/3 ST,SRP

II/3 ST,SRP

4 II/3 ST,SRP

II/3 ST,SRP

5 II/3 ST,SRP

II/3 SP (Práctica 1)

6 I/1, II/2, II/3 Prueba escrita 1

III/4 ST,SRP

7 III/4 ST,SRP

III/4 ST,SRP

8 III/4 ST,SRP

III/4 SP (Práctica 2)

9 III/5 ST,SRP

Page 8: Diseño y análisis de algoritmos - GII 2011/2012

Vicerrectorado de Profesorado, Titulaciones,

Ordenación Académica, Coordinación y Campus.

8 Última actualización: 18 de julio de 2011

III/5 ST,SRP

10 III/5 ST,SRP

III/5 SP (Práctica 3)

11 III/5 ST,SRP

III/5 SP (Práctica 3)

12 III/6 ST,SRP

III/6 ST,SRP

13 III/6 ST,SRP

III/6 SP (Práctica 4)

14 III/6 ST,SRP

I/1, II/2, II/3, III/4, III/5, III/6 SRP

15 I/1, II/2, II/3, III/4, III/5, III/6 SRP

I/1, II/2, II/3, III/4, III/5, III/6 Prueba escrita 2

ST: Sesiones teóricas / SRP: Sesiones de resolución de problemas / SP: Sesiones prácticas.

VII.- Métodos de evaluación

VII. A. Ponderación para la evaluación continua

El sistema de evaluación de las titulaciones en el marco del EEES es la evaluación continua.

En el sistema de evaluación continua la asistencia a clase es obligatoria y su valoración en el proceso de evaluación continua de la asignatura la establecerán los profesores en cada asignatura.

% Mínimo de asistencia a clase: 80%.

Page 9: Diseño y análisis de algoritmos - GII 2011/2012

Vicerrectorado de Profesorado, Titulaciones,

Ordenación Académica, Coordinación y Campus.

9 Última actualización: 18 de julio de 2011

Actividad evaluadora Tipo Ponderación Periodo Contenido

Prueba:

Test Parcial 1

Liberatoria

Puntuación mínima (de 1 a 10): 4

Reevaluable

No reevaluable

25% 7ª semana Temas 1,2,3

Prueba:

Test Parcial 2

Liberatoria

Puntuación mínima (de 1 a 10): 4

Reevaluable

No reevaluable

35% Última semana Temas 4,5,6

Prácticas (dentro y fuera del aula):

Resolución de problemas

Liberatoria

Puntuación mínima (de 1 a 10):………..

Reevaluable

No reevaluable

10% Final del tema correspondiente

Temas 2,3

Prácticas (dentro y fuera del aula):

Resolución de problemas

Liberatoria

Puntuación mínima (de 1 a 10):………..

Reevaluable

No reevaluable

10% Final del tema correspondiente

Tema 4

Prácticas (dentro y fuera del aula):

Resolución de problemas

Liberatoria

Puntuación mínima (de 1 a 10):………..

Reevaluable

No reevaluable

10% Final del tema correspondiente

Tema 5

Page 10: Diseño y análisis de algoritmos - GII 2011/2012

Vicerrectorado de Profesorado, Titulaciones,

Ordenación Académica, Coordinación y Campus.

10 Última actualización: 18 de julio de 2011

Prácticas (dentro y fuera del aula):

Resolución de problemas

Liberatoria

Puntuación mínima (de 1 a 10):………..

Reevaluable

No reevaluable

10% Final del tema correspondiente

Tema 6

Total 100%

VII. B. Ponderación para la evaluación de alumnos a tiempo parcial

Para que un alumno pueda optar a esta evaluación, tendrá que obtener la “Dispensa Académica” para la asignatura, que habrá solicitado al Decano o Director/a del Centro que imparte su titulación.

La “Dispensa Académica” no excluye de la evaluación continua. Dicha evaluación se acomodará por el profesor, asistido por el coordinador de grado, estableciéndose la adaptación curricular según las características de cada caso concreto.

VII. C. Revisión de las pruebas de evaluación.

El profesorado informará de la puntuación de las prácticas y pruebas con la mayor brevedad posible, habilitando horarios para la revisión de las mismas por parte de los alumnos.

VIII.- Recursos y materiales didácticos

General

Título Introduction to Algorithms

Autor T. H. Cormen, C. E. Leiserson y R. L. Rivest

Editorial The MIT Press, 2ª ed., 2001

Título Fundamentos de algoritmia

Autor G. Brassard y P. Bratley

Editorial Prentice-Hall, 1997

Título Estructuras de datos y métodos algorítmicos: Ejercicios resueltos

Autor N. Martí Oliet, Y. Ortega Mallén y J. A. Verdejo López

Editorial Pearson, 2004

Page 11: Diseño y análisis de algoritmos - GII 2011/2012

Vicerrectorado de Profesorado, Titulaciones,

Ordenación Académica, Coordinación y Campus.

11 Última actualización: 18 de julio de 2011

Complementaria

Título Data Structures, Algorithms and Applications in Java

Autor S. Sahni

Editorial McGraw-Hill, 2000

Título Algorítmica: concepción y análisis

Autor G. Brassard y P. Bratley

Editorial Prentice-Hall, 1997

Título Data structures and algorithms in Java

Autor M. T. Goodrich y R. Tamassia

Editorial John Wiley & Sons, 2ª ed., 2001

IX.- Profesorado

Nombre y apellidos Manuel Rubio Sánchez

Horario de tutorías académicas

Por determinar

Correo electrónico [email protected]

Departamento/área de conocimiento

Lenguajes y Sistemas Informáticos I

Categoría Profesor Contratado Doctor

Titulación Académica - Doctor en Informática (2004)

- Licenciado en Informática (1997)

Experiencia Docente Becario de Formación de Profesorado Universitario 1999-2002. Universidad

Politécnica de Madrid:

• Fundamentos del reconocimiento de voz (1 curso)

• Tratamiento digital de la señal de voz (2 cursos)

Profesor de la Universidad Rey Juan Carlos (2004 – actualidad). Área de

Lenguajes y Sistemas Informáticos:

• Metodología y tecnología de la programación (3 cursos)

• Metodología de la programación (1 curso)

Page 12: Diseño y análisis de algoritmos - GII 2011/2012

Vicerrectorado de Profesorado, Titulaciones,

Ordenación Académica, Coordinación y Campus.

12 Última actualización: 18 de julio de 2011

• Cómo mostrar visualmente datos y explicaciones (ADA-Madrid) (3

cursos)

• Seminario en Software Avanzado para la Sociedad de la

Información (máster) (1 curso)

• Estructuras de datos y algoritmos avanzados (1 curso)

• Programación (máster) (1 curso)

• Algoritmos y estructuras de datos avanzadas (máster) (4 cursos)

• Las TIC en la educación (1 curso)

• Diseño y análisis de algoritmos (1 curso)

Experiencia profesional Profesor en la Universidad de St. Louis, Campus de Madrid (2004-2005)

• Introduction to Computer Science (2 cursos)

• Computer Architecture (1 curso)

Nombre y apellidos Antonio Pérez Carrasco

Horario de tutorías académicas

Miércoles: 11:00h a 13:00h y Miércoles: 15:00h a 17:00h Otros horarios a convenir previamente por correo electrónico

Correo electrónico [email protected]

Departamento/área de conocimiento

Lenguajes y Sistemas Informáticos I

Categoría PDI en formación

Titulación Académica - Ingeniería en Informática - Maestría en Tecnologías de la Información y Sistemas Informáticos

Experiencia Docente - 2007/2008 “Procesadores de lenguajes”, prácticas (Ingeniería Informática)

- 2008/2009 “Procesadores de lenguajes”, prácticas (Ingeniería Informática)

- 2008/2009 “Diseño y análisis de algoritmos”, prácticas (Ingeniería Informática)

- 2009/2010 “Procesadores de lenguajes”, prácticas (Ingeniería Informática)

- 2010/2011 “Procesadores de lenguajes”, prácticas (Ingeniería Informática)

Page 13: Diseño y análisis de algoritmos - GII 2011/2012

Vicerrectorado de Profesorado, Titulaciones,

Ordenación Académica, Coordinación y Campus.

13 Última actualización: 18 de julio de 2011

- 2010/2011 “Diseño y análisis de algoritmos”, teoría y prácticas (Ingeniería Informática)

- 2010/2011 “Diseño y análisis de algoritmos”, coordinación, teoría y prácticas (Grado en Ingeniería del Software)

Experiencia profesional

Nombre y apellidos Natalia Esteban Sánchez

Horario de tutorías académicas

Por determinar

Correo electrónico [email protected]

Departamento/área de conocimiento

Lenguajes y Sistemas Informáticos I

Categoría Profesor Visitante Lector

Titulación Académica -Ingeniería Técnica en Informática de Sistemas

- Ingeniería en Informática

- Máster Universitario en Ingeniería de Sistemas de Decisión.

Experiencia Docente - 2007/2011 Cursos de formación para profesorado de la URJC.

- 2010/2011 “Diseño y análisis de algoritmos”, teoría y prácticas (Grado en Ingeniería Informática)

- 2010/2011 “Diseño y análisis de algoritmos”, teoría y prácticas (Grado en Ingeniería del Software)

Experiencia profesional

Nombre y apellidos Belén Sáenz Rubio

Horario de tutorías académicas

Por determinar

Correo electrónico [email protected]

Departamento/área de Lenguajes y Sistemas Informáticos I

Page 14: Diseño y análisis de algoritmos - GII 2011/2012

Vicerrectorado de Profesorado, Titulaciones,

Ordenación Académica, Coordinación y Campus.

14 Última actualización: 18 de julio de 2011

conocimiento

Categoría Profesor Visitante Lector

Titulación Académica -Ingeniería Técnica en Informática de Sistemas

- Ingeniería en Informática

- Máster Universitario en Ingeniería de Sistemas de Decisión.

Experiencia Docente - 2007/2011 Cursos de formación para profesorado de la URJC.

- 2010/2011 “Diseño y análisis de algoritmos”, prácticas (Grado en Ingeniería Informática).

- 2010/2011 “ITCs in Education”, prácticas (Educación Infantil).

Experiencia profesional Personal investigador en distintos proyectos de investigación.