2015 IC EIF203

Transcripción

2015 IC EIF203
Universidad Nacional
Facultad de Ciencias Exactas y Naturales
Escuela De Informática
CARTA AL ESTUDIANTE
CODIGO:
NOMBRE:
REQUISITOS:
NATURALEZA:
AREA DISCIPLINARIA:
NIVEL:
CICLO LECTIVO:
PROFESORES:
COORDINADOR:
EIF 203
Estructuras Discretas para Informática
EIF 200: Fundamentos de Informática
MAT-030: Matemática para Informática I
Teórico / Práctico
Ingeniería de Software
II nivel
I ciclo
Carlos Loría Saénz, Juan Félix Ávila Herrera, Enrique Vílchez Quesada
Enrique Vílchez Quesada, email: [email protected]
Créditos
Horas Semanales
3
8
Horas Presenciales
Prácticas
Teóricas
1
3
Horas estudio independiente
4
DESCRIPCION
Este curso desarrolla los conceptos y resultados fundamentales de la
matemática finita que sirven de base a las estructuras de datos y a los
lenguajes formales. Proporciona al estudiante las estructuras discretas más
importantes para el desarrollo de soluciones computacionales eficientes,
siendo esta área disciplinaria las matemáticas por excelencia utilizadas por
los futuros profesionales en este campo. Las computadoras tratan con
objetos finitos cuyo abordaje formal se hace posible a través de muchos de
los modelos no continuos y contables proporcionados por las matemáticas
discretas. En general el curso crea una base de conocimiento teórico-práctico
para el estudio formal de otras áreas de la informática, tales como: los
sistemas operativos, las estructuras de datos y los paradigmas de
programación. Las prácticas se enfocan en la solución algorítmica de
situaciones vinculadas con la ingeniería en sistemas computacionales. Se
pretende que el alumno desarrolle habilidades cognitivas relacionadas con la
inteligencia abstracta en la resolución de problemas, la creatividad en el uso
disciplinar de los algoritmos vistos en clase ante posturas abiertas y
específicas y, el aprendizaje de las distintas teorías con un claro carácter
significativo, aplicando dichos métodos mediante la didáctica que provea los
elementos necesarios de acuerdo con el nivel curricular de los estudiantes.
OBJETIVO GENERAL
Conocer y aplicar las teorías básicas de las estructuras discretas para
informática, en la resolución de problemas que enfrentan situaciones
vinculadas con las ciencias de la computación.
OBJETIVOS ESPECÍFICOS
1. Conocer las teorías básicas de la matemática discreta para informática,
como lo son: aplicaciones de la recursividad en la programación,
resolución de relaciones de recurrencia, convergencia de algoritmos,
relaciones, grafos, árboles, autómatas de estado finito, máquinas de
Turing y, lenguajes y gramáticas especiales.
2. Comprender las aplicaciones de la recursividad dentro de la
programación.
3. Conocer distintos métodos de resolución de relaciones de recurrencia.
4. Utilizar los principios de las notaciones asintóticas para el análisis de la
complejidad de un algoritmo.
5. Conocer la teoría básica de las relaciones y su vinculación con las
funciones.
6. Comprender los aspectos esenciales de la teoría de grafos: definición,
representación, trayectorias, ciclos y algoritmos.
7. Utilizar la teoría de grafos para resolver problemas reales orientados en
las ciencias de la computación.
8. Conocer los aspectos principales de la teoría de árboles: terminología,
teoremas de caracterización, árboles de expansión, árboles binarios y sus
aplicaciones como estructuras de datos.
9. Utilizar los árboles y sus algoritmos para resolver problemas relacionados
con la informática.
10. Conocer la teoría de autómatas de estado finito, lenguajes, gramáticas
especiales y sus relaciones.
11. Comprender los principios fundamentales de las máquinas de Turing.
CONTENIDOS
I Parte: Recursividad, relaciones de recurrencia, análisis de algoritmos
(6 semanas)



Recursividad (2 semanas)
o Definiciones recursivas.
o Principio de demostración por recursividad.
o Aplicaciones de la recursividad a la programación.
Relaciones de recurrencia (2 semanas)
o Definiciones básicas.
o Ejemplos de recurrencias y su solución.
o Método iterativo.
o Resolución de recursividades homogéneas lineales.
Análisis de algoritmos (2 semanas)
o Definición de algoritmo.
o Ejemplos de algoritmos.
o Notaciones asintóticas: O, Ω y θ.
o Análisis gráfico de las notaciones asintóticas O, Ω y θ.
o Propiedades de las notaciones asintóticas O, Ω y θ.
o Aplicaciones de las notaciones O, Ω y θ al análisis de algoritmos.
II Parte: Relaciones, grafos y árboles (6 y 1/2 semanas)



Relaciones (2 semanas)
o Concepto de relación.
o Concepto de función a través de una relación.
o Representación digráfica de una relación.
o Relaciones de equivalencia.
o Clases de equivalencia.
o Órdenes parciales.
Grafos (2 semanas)
o Concepto de grafo, digrafos y sus propiedades.
o Grafos discretos y completos.
o Subgrafos y grafos cocientes.
o Caminos y circuitos: aplicaciones en informática.
o Circuitos de Euler, algoritmos de Fleury y HierHolzer, teoremas y
aplicaciones.
o Circuitos de Hamilton, teoremas relacionados (Dirac y Ore) y
aplicaciones sobre el problema del agente viajero.
o Matriz de adyacencia e incidencia y sus propiedades.
o Concepto de grafo ponderado.
o Algoritmo del camino más corto (Dijkstra).
Árboles (2 y 1/2 semanas)
o Concepto de árbol y sus propiedades.
o Códigos de Huffman.
o Árboles binarios y sus propiedades.
o Árboles generadores o de expansión y algoritmos buscar primero a
lo ancho y a lo largo.
o Aplicaciones de los árboles como estructuras de datos.
o Operaciones de los árboles binarios: búsqueda, inserción, borrado
y recorridos preorden, interorden y postorden.
o Árboles con etiquetas y sus aplicaciones sobre la representación
de expresiones algebraicas.
o Árboles de expansión mínima y algoritmos de Prim y de Kruskal.
III Parte: Máquinas de estado finito, autómatas, máquinas de Turing, lenguajes y
gramáticas (4 y 1/2 semanas)



Máquinas de estado finito y autómatas (2 semanas)
o Concepto y propiedades de una máquina de estado finito.
o Recorridos de hileras en una máquina de estado finito.
o Concepto y propiedades de un autómata de estado finito.
o Recorridos de hileras en un autómata de estado finito.
o Construcción de máquinas y autómatas de estado finito bajo
condiciones preestablecidas.
Máquinas de Turing (1/2 semana)
o Definición de una máquina de Turing.
o Reconocimiento de conjuntos a través de máquinas de Turing.
Lenguajes y gramáticas (2 semanas)
o
o
o
METODOLOGÍA
Concepto y propiedades de los lenguajes y las gramáticas.
Autómatas de estado finito no determinísticos.
Relaciones entre los lenguajes y los autómatas.
Para el logro de los objetivos del presente curso, se propone un abordaje de
los contenidos mediante:
1. Presentaciones magistrales a cargo del profesor.
2. Desarrollo de ejercicios teórico-prácticos y aplicados en el campo de la
informática de forma individual y grupal.
3. Utilización de herramientas de software para desarrollar algunas de las
áreas de contenido del curso, tanto en sus aspectos teóricos como
prácticos.
4. Realización de diversas actividades (tareas y/o quices) para facilitar una
asimilación más propicia de cada una de las unidades temáticas.
5. Promoción de una investigación constructiva en los estudiantes, de tal
manera que éstos brinden aportes al aprendizaje propio y de los demás y,
construyan sus propias soluciones a algunos problemas planteados.
Se visualiza al estudiante como una persona altamente participativa y
comprometida con su propio aprendizaje, responsable y honesta al
desarrollar cada una de las actividades implicadas en el curso. Se requiere
que el estudiante dedique al menos 4 horas de estudio extra clase y asista a
las horas de consulta del docente.
Se espera que el profesor sea un guía en el proceso de aprendizaje y que
promueva el carácter investigativo del alumno. En este sentido, la utilización
de diferentes recursos didácticos para desarrollar sus lecciones, se estima
como un elemento fundamental para complementar el proceso de enseñanza
y aprendizaje.
La coordinación hará disponible material de apoyo para los estudiantes en el
aula virtual institucional, cuya dirección URL es la siguiente:
https://www.aulavirtual.una.ac.cr.
Además
en
la
dirección:
http://www.escinf.una.ac.cr/discretas se encuentran disponibles otros
materiales complementarios al curso. Cada docente podrá ofrecer
alternativas de recursos según corresponda a sus cursos y métodos.
EVALUACIÓN
El trabajo será evaluado por medio de exámenes parciales cuyo valor
ponderado es de un 80%. Las pruebas parciales serán aplicadas por cada
profesor en el tiempo de clase durante la semana indicada en el cronograma.
Las actividades de aprendizaje tendrán un valor porcentual de un 20%, se
realizarán como mínimo cinco durante el semestre en curso. La suma de
estos rubros proporciona la nota final, tal y como se desglosa a continuación:
Actividades de
aprendizaje
1 Examen parcial
25 % (mínimo 5)
25%
25 %
25%
100%
2 Examen parcial
3 Examen parcial
TOTAL
Si el estudiante no aprueba el curso, pero obtiene una nota superior o igual a
6.0, podrá presentar un examen extraordinario previo pago de los derechos
correspondientes en el Departamento de Financiero de la Universidad
Nacional. Para aquellos estudiantes que deban presentar el examen
extraordinario, en su fecha de aplicación, deberán traer cancelado el recibo
de derecho respectivo, sin este recibo el alumno no podrá realizar la prueba.
CRONOGRAMA
Las fechas tentativas y contenidos a evaluar en las pruebas escritas, son las
siguientes según cada profesor establezca considerando cada grupo:
Descripción
%
Fecha
Contenido
1 Examen parcial
25%
Semana 6
Parte I
2 Examen parcial
25 %
Semana 15
Parte II
3 Examen parcial
25%
Semana 18
Parte III
Actividades de
aprendizaje
25%
Según criterio del docente (mínimo 5 actividades
que comprueban aprendizaje)
BIBLIOGRAFIA







Ávila, J. (2005) Estructuras de matemática discreta para
computación. Costa Rica: UNA.
Caballero, M., Migallón, V. y Penadés, J. (2001) Prácticas de
matemática discreta con MAGRADA. España: Publicaciones
Universidad de Alicante.
Grassman, W. y Tremblay, J. (1997) Matemática discreta y lógica.
España: Prentice-Hall.
Johnsonbaugh, R. (2005) Matemáticas discretas. México: Pearson
Prentice Hall.
Kolman, B., Busby, R. y Ross, S. (1995) Estructuras de matemáticas
discretas
para
computación.
México:
Prentice-Hall
Hispanoamericana.
Rosen, K. (2007) Discrete mathematics and its applications. USA:
Mc. Graw-Hill.
Vílchez, E. (2014) Estructuras discretas con Mathematica. México:
Alfaomega.
ESPECIFICACIONES GENERALES PARA LA REALIZACIÓN DE LAS PRUEBAS ESCRITAS


Se debe presentar la cédula de identidad o su equivalente legal.
Ningún estudiante debe abandonar el recinto de examen en los primeros
treinta minutos de iniciada la prueba, ni entrar en él, pasados treinta
25
minutos.





No se contestan preguntas durante la administración de la prueba, salvo que
éstas sean de carácter general, en cuyo caso se aclararán en voz alta.
Los exámenes pueden resolverse en lápiz (parcial o totalmente) pero
aquellos estudiantes que así lo hicieran no tienen derecho a reclamo en la
nota obtenida. Tampoco se tendrá derecho a reclamo sobre las partes del
examen en las cuales se utilice corrector.
Las pruebas parciales deben realizarse en un cuaderno de examen, sin utilizar
hojas sueltas.
No se permite el uso de teléfonos celulares o radiolocalizadores.
Ningún estudiante puede abandonar el recinto de examen durante la
administración de la prueba, salvo que haya finalizado su examen y desee
entregarlo.
HORAS DE ATENCIÓN AL ESTUDIANTE
La atención a los estudiantes se realizará según la disponibilidad de cada profesor ó
en acuerdo con los alumnos en casos especiales.

Documentos relacionados