You are on page 1of 13

AyDA-MiniSemeste 2012

Profesores: Jose Aguilar e Isabel Besembel


Sitio de Trabao: !"MISID
!onta#to: aguilar$ula%&e e ib#$ula%&e
!onsulta: 'or email #uadrar #ita !onsulta: 'or email #uadrar #ita
www.ing.ula.ve/aguilar
www.ing.ula.ve/~ibc
Sus correos al mio (titulo mensaje estudiante
AyDA)
OB!"#$O
!ste curso es el %ltimo de la cadena de
&rogramaci'n donde se consolidan las estructuras
de datos y algoritmos necesarios &ara so&ortar la
soluci'n de &roblemas t(&icos en las )iencias soluci'n de &roblemas t(&icos en las )iencias
)om&utacionales.
OBJETIVOS ESPECIFICOS
Consolidar un alto nivel en el diseo de
algoritmos y estructuras de datos.
Desarrollar altas habilidades para el anlisis de
4
Desarrollar altas habilidades para el anlisis de
algoritmos.
Conocer la estructura grafo y sus principales
algoritmos
Conocimiento de base
Unidad I: Tcnicas avanzadas de diseo y anlisis
Tema 1. Mtodos de diseo bsicos: Dividir conquistar y backtracking.
Tema 2. Programacin dinmica: Multiplicacin de matrices en
cadena, subsecuencia comn ms larga, triangulacin ptima de
polgonos.
Tema 3. Anlisis amortizado: Mtodo agregado, mtodo del contador,
mtodo potencial, ejemplos
Unidad II: Grafos
5
Unidad II: Grafos
Tema 1. Fundamentos: Representaciones, bsqueda en amplitud,
bsqueda en profundidad, ordenamiento topolgico.
Tema 2 . rboles abarcadores mnimos: Algoritmo de Prim y algoritmo
de Kruskal.
Tema 3. Caminos ms cortos: Caminos ms cortos y relajacin,
Algoritmo de Dijkstra, algoritmo de Bellman-Ford, Caminos ms cortos
en grafos dirigidos, restricciones y caminos ms cortos (programacin
lineal), algoritmo de Floy-Warshall y algoritmo de Jonson.
Tema 4. Flujo mximo: Redes de flujo y mtodo de Ford-Fulkerson.
Conocimiento de base
Unidad III: Algoritmos matemticos
Tema 1. Operaciones sobre matrices: Representaciones
especiales de matrices, Algoritmo de Strassen, sistemas
numricos algebraicos y multiplicacin de matrices, sistemas
lineales de ecuaciones, inversin de matrices, matrices simtricas
positivas y aproximacin de mnimos cuadrados
Tema 2. Polinomios y transformada rpida de Fourier:
Representaciones de polinomios, Transformada discreta de
Fourier, transformada rpida de Fourier.
Tema 3. Algoritmos de teora de nmeros: Nociones de teora de
6
Tema 3. Algoritmos de teora de nmeros: Nociones de teora de
nmeros, mximo comn divisor, aritmtica modular, sistemas
lineales de ecuaciones modulares, teorema de resto chino,
potencias de un entero y algoritmo RSA de criptografa
Unidad IV: Completitud NP
Tema 1. Problemas NP-completos: Clases P y NP, reducciones
polinomiales, problemas NP, algunas pruebas de completitud NP,
algoritmos no determinsticos y problemas NP duros.
Tema 2 . Heursticas y algoritmos de aproximacin: Algoritmos
heursticos, coloreo de grafos, el problema del vendedor viajero, el
problema de morral y aproximaciones a problemas NP duros.
Conocimiento de base
Unidad V: Geometra computacional
Tema 1. Algoritmos sobre Polgonos: Teoremas de galera de arte, Teora
de triangulacin, rea de polgono, interseccin de segmentos y
algoritmos de triangulacin.
Tema 2. Particin de polgonos: Particin montona, trapeciolizacin,
particin en montaas montonas, triangulacin de tiempo lineal,
particin convexa.
Tema 3. Cerco convexo: Definiciones de convexidad y de cerco convexo,
algoritmos cndidos para puntos extremos, clculo de papel de regalo,
cerco rpido, algoritmo de Graham, algoritmos divide-conquista,
7
cerco rpido, algoritmo de Graham, algoritmos divide-conquista,
representaciones poliedrales, algoritmos aleatorizados y cerco n-
dimensionales.
Tema 4. Diagramas de Voronoi: Definiciones y propiedades bsicas,
triangulaciones de Delaunay, algoritmos y aplicaciones.
Tema 5. Disposiciones de lneas: Definiciones, combinatorias de
disposiciones, algoritmo incremental, 3 y n dimensiones, dualidad y
diagramas de Voronoi de alto orden.
Tema 6. Bsqueda e interseccin: Interseccin segmento-segmento,
interseccin segmento-tringulo, pertenencia de punto en polgono,
pertenencia de punto en poliedro, interseccin de polgonos convexos,
interseccin de segmentos e interseccin de polgonos no convexos..
BIBLIOGRAFIA
Brassard, G y Bratley, P. Fundamentals of algorithmics.
Prentice Hall, 1996.
Cormen, T.; Leiserson, C. y Rivest, R. Algorithms. MIT
Press, 1990.
8
Knuth, D. The art of Computer Programming. Vol. 1 y 3.
Addison-Wesley. 1975.
L. Len, Tejiendo Algoritmos, 2008
ORourque, J. Computational Geometry. Cambrige
University Press, 1998.
!valuaci'n
)onocimiento Ad*uirido (+,-)
!./menes semanales
0roducto (1,-) 0roducto (1,-)
A&licaciones2 investigaciones2 discusiones
Semana Capacitacin Conocimiento
1 Introduccin a la asignatura
Temas 2.1, 2.2 y 2.3
2 Temas 2.3, 2.4, 3.1, 3.2
3 Temas 3.2, 3.3, 41
4 Temas 4.1, 4.2
5 Unidad 1
6 Temas 5.1, 5.2, 5.3
7
Temas 5.3, 5.4
8 Temas 5.5, 5.6
TDSO
Defini#i(n del uni&erso de #lases y ti'o de datos
abstra#tos )TDAs*
20/11/07 Versin 1.0
Universo de clases y TDAs AgenteNegocio
{Coleccin de clases y TDAs requerida para implantar el Agente de Negocio}
1
2
3
4
5
Agente
Negocio
( )
Cadena
UID
AgenteNegocio ( ): clase que permite la creacin de un
Agente de Negocio.
Cadena: TDA cadena de caracteres de longitud
variable.
Entero: valor entero. 5
6
UID
Logico
TablaTie
mpoRea
l
Estructu
ra
Entero: valor entero.
UID: tipo entero que representa un identificador nico
en el sistema multiagente.
Logico: tipo lgico, conformado por los valores cierto y
falso.
TablaTiempoReal: TDA que contiene los datos del
proceso real.
Estructura: tipo de dato que contiene campos
asociados a informacin configurada.
Defini#i(n del uni&erso de #lases y ti'o de datos
abstra#tos )TDAs*
20/11/07 Versin 1.0
1,1 (Constructor, Pblico)
agenteNegocio( ): AgenteNegocio
{Crea un Agente del tipo AgenteNegocio}
{pre: existencia de
memoria y
Negocio.dat distinto
de Null}
{pos: se crean componentes del agente o error}
1
2
3
4
abrirArchivoConf(Negocio.dat)
Leer(Negocio.dat, ConfNegocio)
uidRepositorioTiempoReal =
asignaUid( )
listaVariables:
Lista<TablaTiempoReal>
asignaUid(): mtodo que asocia el AN con un nico
repositorio datos de tiempo real
listaVariables: Lista que contiene los datos del proceso
real
1
2
agenteNegocio x se cre el AN
agenteNegocio x error
Se instancia el agente x, si ste se puede crear hay
xito, por el contrario hay error.