Está en la página 1de 5

CORPORACIN UNIVERSITARIA DE CIENCIA Y DESARROLLO

FACULTAD DE INGENIERA INFORMATICA


IDENTIFICACIN DE LA ASIGNATURA
REA:
ESPECIFICA
NOMBRE DE LA ASIGNATURA:
ANLISIS DE ALGORITMOS
CDIGO DE LA ASIGNATURA:
2069
SEMESTRE:
VI CRDITOS:
2
INTENSIDAD:
32 Horas
Trabajo Independiente:
MODALIDAD:
TERICA:
X
PRCTICA:
PRERREQUISITO:
ESTRUCTURA DE DATOS

64 Horas

FINALIDAD DE CURSO
Este curso da un tratamiento profundo de anlisis de complejidad. Ayudan a motivar y
desarrollar el tema varios algoritmos de bsqueda y ordenamientos, as como mtodos de
espacios de bsqueda del rea de Inteligencia Artificial y estructuras de archivos utilizados en
sistemas de bases de datos. Se discuten clases de complejidad, as como la naturaleza de la
NP-completez e intratabilidad. Esto lleva a una discusin de computabilidad y de la mquina
universal de Turing. Se discuten algunos problemas asociados con algoritmos paralelos
OBJETIVO GENERAL
Analizar la eficiencia de diversos algoritmos para resolver una variedad de problemas,
principalmente no numricos.
Ensear al alumno a disear y analizar nuevos algoritmos.
CONTENIDO
1. Introduccin y conceptos bsicos ( 4 horas)
Se establecen los conceptos principales con los cuales se mide un algoritmo y se presentan los
distintos modelos de computabilidad que se utilizan para evaluar la calidad de un algoritmo.
1.1 Problemas y algoritmos
1.2 Complejidad: Como se mide la eficiencia de un algoritmo? Tiempo y Espacio. Peor
caso, caso promedio. Modelo de un computador y sus medidas de complejidad.
1.3 Modelos de cmputo
1.4 Modelo Universal de la Mquina de Turing
1.5 Problemas de complejidad polinomial
2. Complejidad en ordenamientos (16 horas)
Se regresa a los algoritmos de ordenamientos ya vistos y se examinan detenidamente las
medidas de complejidad de los mismos. Se introducen nuevos tipos de algoritmos que, a pesar
de no garantizar la correctez de la solucin, presentan medidas de "eficiencia" que en su
comportamiento promedio resultan ser mejores que aqullos cuyas cotas mximas, de ser
cumplidas, resultan ser poco eficientes.
2.1 Distintos tipos de ordenamientos (intercambio, insercin, seleccin, mezcla, por
particiones). Cotas mnimas en ordenamientos. Cotas ptimas.
2.2 Notacin.

CORPORACIN UNIVERSITARIA DE CIENCIA Y DESARROLLO


FACULTAD DE INGENIERA INFORMATICA
2.2.1 Medidas de Orden.
2.2.2 Solucin de Recurrencias.
2.2.3 Funciones Generatrices.
2.2.4 Clculos asintticos.
2.2.5 Manipulacin de big-O.
2.3 Paradigmas: Tcnicas para el diseo de algoritmos:
2.3.1 Bsqueda exhaustiva,
2.3.2 heursticas,
2.3.3 algoritmos probabilsticos,
2.3.4 avaricia (greedy),
2.3.5 dividir para reinar,
2.3.6 programacin dinmica,
2.3.6.1 induccin.
2.3.7 En cada caso, revisin de problemas caractersticos y de un mismo
problema resuelto con cada tcnica.
2.4 Conceptos de algoritmos relajados, de aproximacin, probabilsticos y heursticos
para la obtencin de soluciones "adecuadas".
3. Problemas que involucran sistemas complejos Se presentan mtodos para representar y
realizar bsquedas en grficas. Los algoritmos de grficas, generalmente de una complejidad
considerable, ponen al descubierto mucha informacin respecto a la estructura de la grfica.
Estos algoritmos son importantes en cuanto a que se muestran estrategias de optimizacin que
logran abatir la complejidad natural de los algoritmos tpicos. (20 horas)
3.1 Estructuras.
3.2 Colas y particiones
3.3 Ordenamientos parciales:
Algoritmos de ordenamiento:
Quicksort,
Mergesort,
Heapsort, [Bucket sort, Radix sort].
Algoritmos de seleccin:
Max-Min,
k-simo.
Colas de Prioridad:
heaps clsicas, [heaps binomiales].
3.4 Manipulacion de conjuntos :
Operaciones usuales:
buscar,
insertar,
eliminar,
modificar,
unir,
recorrer, etc.
Implementaciones.
Vectores de bits.
Arreglos: desordenados y ordenados.
Arboles: binarios, AVL, 2-3, [ptimos, balanceo heurstico,] en memoria
secundaria (rboles B). [Skip lists.]

CORPORACIN UNIVERSITARIA DE CIENCIA Y DESARROLLO


FACULTAD DE INGENIERA INFORMATICA
Arboles digitales: tries, Patricia. Hashing: encadenado, abierto, [perfecto,]
en memoria secundaria (hashing lineal). Union-find.
3.5 Transmisin de la informacin
3.6 Distribucin de flujo.
3.7 Algoritmos en Grafos (4.5 horas):
Definiciones.
Propiedades bsicas.
Arboles cobertores de costo mnimo.
Bsqueda en grafos.
Caminos mnimos.
Clausura transitiva. [Biconectividad. Flujo mximo.]
3.8 Bsqueda en texto (3 horas) :
Bsqueda de strings:
autmata finito,
algoritmos de Knuth-Morris-Pratt, Boyer-Moore, [Rabin-Karp, Shift-Or]. [Bsqueda
multipatrn.]
Arboles de sufijos. [Bsqueda aproximada.]
4. Problemas que involucran nmeros (4 horas)
Con este tipo de problemas se introduce al estudiante a la necesidad de manejar aritmtica de
precisin y magnitud arbitrarias en software a travs de una representacin fija de unos cuantos
dgitos en el hardware. Esto apunta en dos direcciones: primero, las operaciones aritmticas
bsicas de suma, resta, multiplicacin y divisin se vuelven "caras" y su costo se incrementa en
razn del nmero de dgitos en sus argumentos. En segundo lugar, se debe cambiar el modelo
para medir la complejidad midiendo el tamao de los datos en trminos del nmero de dgitos
necesario para representarlos. A este modelo se le conoce como el modelo de costeo en bits.
4.1 Nmeros exponenciales.
4.2 Nmeros comunes.
4.3 Nmeros Primos.
4.4 Nmeros secretos.
4.5 Nmeros autnticos.
4.6 Nmeros al azar.
4.7 Transformando nmeros.
5. Algoritmos Paralelos (8 horas)
Introduccin al desarrollo de algoritmos para arquitecturas paralelas y distribuidas, ilustrando
como el paralelismo puede proporcionar un aceleramiento substancial en comparacin con
ejecucin secuencial.
5.1 Paralelismo, la PRAM y otros modelos.
5.2 Algunos algorimos PRAM y el manejo de conflictos en la escritura.
5.3 Mezclas y ordenamientos.
5.4 Un algoritmo con componentesa paralelos conectados.
5.5 Cotas mnimas.
6. La clase NP y su relacin con la clase P (4 horas)
Se regresa al concepto de algoritmos a travs de la luz de los algoritmos ya presentados. Se
distingue entre las teoras de Computabilidad y Complejidad. La primera de ellas se pregunta

CORPORACIN UNIVERSITARIA DE CIENCIA Y DESARROLLO


FACULTAD DE INGENIERA INFORMATICA
Cundo hay las condiciones para que esto se compute? Se puede computar? mientras que
la segunda se pregunta Qu tan barato puede calcularse esto?Qu tan difcil es calcularlo?
6.1 Nacimiento del concepto de NP-Completez.
6.2 Determinar las jerarquas de complejidad.
6.3 Qu es un algoritmo?
6.4 Qu es una prueba?
7. La Teora de la NP SE da una introduccin a la teora de la NP-Completez, de tal manera que
se puedan identificar aquellos problemas que pertenecen a esta clase, para optar por
algoritmos aproximados para resolver problemas de este tipo. Introduce tambin la nocin de
reducibilidad para algunos problemas NP-Completos a problemas polinomiales. Finalmente da
una perspectiva de la teora de Computabilidad. (8 horas)
7.1 Transformaciones polinomiales.
7.2 Probando resultados NP-completos: 3-SAT y reducciones; problemas bsicos NPcompletos
7.3 Problemas no decidibles
7.4 Solucin de problemas difciles.
7.5 Computabilidad: Mquinas de Turing y Universales.
COMPETENCIAS A DESARROLLAR EN LOS ESTUDIANTES
Sustentar los fundamentos de la Ingeniera Informtica y argumentar acerca de los alcances
que tiene como profesin.
* Tener una cultura informtica, entender el lenguaje y funcionamiento del software y del
hardware bsico que le sirva de referencia para iniciar el conocimiento ms profundo de la
Ingeniera Informtica.
*

ACTIVIDADES (DINAMICAS) QUE FACILITEN EL APREDIZAJE


Consultas frecuentes de la actualidad informtica a travs del Internet, la prensa y las
revistas especializadas en el tema.
Exposiciones adelantadas por los estudiantes sobre ejemplos cotidianos de aplicaciones de la
Ingeniera Informtica.
METODOLOGIA
Explicacin de temas por parte del profesor, participacin de los alumnos en la parte deductiva del
material, estimular discusin en grupos de trabajo y solucin individual y en grupos de problemas y
ejercicios
Se efectuarn dos (2) parciales cada uno con un valor del 35% de la nota total y un examen
final que tendr un valor del 30%.

CORPORACIN UNIVERSITARIA DE CIENCIA Y DESARROLLO


FACULTAD DE INGENIERA INFORMATICA
Se considerarn adems trabajos individuales y/o de grupo dentro de cada nota previa y final, la
evaluacin de los talleres deber participar en buena medida de cada evaluacin previa y de la
nota final.
Se har a travs de pruebas escritas y orales, trabajos en grupo, talleres, participacin en clase
y presentacin y exposicin de trabajos de consulta e investigacin.
Los exmenes estarn en la escala de 1.0 a 5 tenindose en cuenta el sistema de exceso y
defecto.
BIBLIOGRAFIA
APOSTOL, Tom. Clculus. Vol I. 2edicin. Blaisdell Publishina Company. Walthman.
Massachussetts.
AYRES. Frank. Clculo diferencial e integral. Serie Schaum. 2 Edicin. McGraw Hill. Bogot. .
LEITHOLD, Louis. El Clculo con geometra analtica. 4 edicin. Editorial Harla S.A., Mxico. .
KOVACIC, Michael L. Matemticas, aplicaciones a las ciencias econmico administrativas.
Fondo Educativo Interamericano. Bogot.
PROTER, Murray H.& Morrey, Charles B. Clculo con geometra Analtica. 3 edicin. Fondo
Educativo Interamericano. Bogot. .
STEIN, Sherman. Clculo con Geometra Analtica. 3 edicin. Mc Graw Hill. Bogot. .
TAKEUCHY, Yu. Clculo I. Universidad Nacional,. Mc Graw Hill

También podría gustarte