Algoritmos voraces (greedy)
|
|
- Marcos Belmonte Cruz
- hace 5 años
- Vistas:
Transcripción
1 Dr. Eduardo A. RODRÍGUEZ TELLO CINVESTAV-Tamaulipas 21 de marzo de 2018 Dr. Eduardo RODRÍGUEZ T. (CINVESTAV) Algoritmos voraces 21 de marzo de / 45
2 1 Algoritmos voraces (greedy) Aplicaciones de los algoritmos voraces Change-making problem Minimum spanning tree (MST) Problema de codificación Codigos de Huffman Dr. Eduardo RODRÍGUEZ T. (CINVESTAV) Algoritmos voraces 21 de marzo de / 45
3 Algoritmos voraces (greedy) Construyen una solución de un problema de optimización paso a paso a través de una secuencia de elecciones que son: Factibles Localmente óptimas Irrevocables Para algunos problemas, entregan una solución óptima para cada instancia Para la mayoría, no lo logran pero pueden ser útiles para encontrar aproximaciones rápidas Dr. Eduardo RODRÍGUEZ T. (CINVESTAV) Algoritmos voraces 21 de marzo de / 45
4 Aplicaciones de los algoritmos voraces 1 Algoritmos voraces (greedy) Aplicaciones de los algoritmos voraces Change-making problem Minimum spanning tree (MST) Problema de codificación Codigos de Huffman Dr. Eduardo RODRÍGUEZ T. (CINVESTAV) Algoritmos voraces 21 de marzo de / 45
5 Aplicaciones de los algoritmos voraces Aplicaciones de los algoritmos voraces Soluciones óptimas: Change-making problem Minimum spanning tree (MST) Single-source shortest paths Simple scheduling problems Huffman codes Aproximaciones: Traveling salesman problem (TSP) Knapsack problem Otros problemas de optimización combinatoria Dr. Eduardo RODRÍGUEZ T. (CINVESTAV) Algoritmos voraces 21 de marzo de / 45
6 Change-making problem 1 Algoritmos voraces (greedy) Aplicaciones de los algoritmos voraces Change-making problem Minimum spanning tree (MST) Problema de codificación Codigos de Huffman Dr. Eduardo RODRÍGUEZ T. (CINVESTAV) Algoritmos voraces 21 de marzo de / 45
7 Change-making problem Change-making problem Dada una cantidad ilimitada de monedas de denominaciones d 1, > > d m, dar cambio por la cantidad n con el menor número de monedas posible Ejemplo: d 1 = 25c, d 2 = 10c, d 3 = 5c, d 4 = 1c y n = 48c La solución voraz (greedy) es óptima cualquier n y con denominaciones normales Puede no ser óptima para denominaciones arbitrarias Dr. Eduardo RODRÍGUEZ T. (CINVESTAV) Algoritmos voraces 21 de marzo de / 45
8 Minimum spanning tree (MST) 1 Algoritmos voraces (greedy) Aplicaciones de los algoritmos voraces Change-making problem Minimum spanning tree (MST) Problema de codificación Codigos de Huffman Dr. Eduardo RODRÍGUEZ T. (CINVESTAV) Algoritmos voraces 21 de marzo de / 45
9 Minimum spanning tree (MST) Minimum spanning tree (MST) Árbol recubridor (spanning tree) de un grafo conectado G: un subgrafo acíclico conectado que incluye todos los vértices de G Árbol recubridor mínimo (minimum spanning tree, MST) de un grafo conectado ponderado G: un árbol recubridor de G con peso total mínimo Dr. Eduardo RODRÍGUEZ T. (CINVESTAV) Algoritmos voraces 21 de marzo de / 45
10 1 Algoritmos voraces (greedy) Aplicaciones de los algoritmos voraces Change-making problem Minimum spanning tree (MST) Problema de codificación Codigos de Huffman Dr. Eduardo RODRÍGUEZ T. (CINVESTAV) Algoritmos voraces 21 de marzo de / 45
11 Inicia con un árbol T 1 que consiste de un vértice (cualquiera) del grafo y expande este árbol un vértice a la vez para producir el MST a través de una serie de subárboles T 1, T 2,, T n En cada iteración, construye T i+1 a partir de T i al agregar un vértice de G que no está en T i y que es el más cercano a aquellos de T i (paso voraz) Se detiene cuando todos los vértices están incluidos Dr. Eduardo RODRÍGUEZ T. (CINVESTAV) Algoritmos voraces 21 de marzo de / 45
12 Dr. Eduardo RODRÍGUEZ T. (CINVESTAV) Algoritmos voraces 21 de marzo de / 45
13 Dr. Eduardo RODRÍGUEZ T. (CINVESTAV) Algoritmos voraces 21 de marzo de / 45
14 Dr. Eduardo RODRÍGUEZ T. (CINVESTAV) Algoritmos voraces 21 de marzo de / 45
15 Dr. Eduardo RODRÍGUEZ T. (CINVESTAV) Algoritmos voraces 21 de marzo de / 45
16 Dr. Eduardo RODRÍGUEZ T. (CINVESTAV) Algoritmos voraces 21 de marzo de / 45
17 Dr. Eduardo RODRÍGUEZ T. (CINVESTAV) Algoritmos voraces 21 de marzo de / 45
18 Dr. Eduardo RODRÍGUEZ T. (CINVESTAV) Algoritmos voraces 21 de marzo de / 45
19 Requiere un cola de prioridad para localizar el vértice más cercano a aquellos de T i Eficiencia: O(n 2 ), grafo representado como una matriz de adyacencia ponderada y la cola de prioridad mediante un arreglo O(m log n) grafo representado como una lista de adyacencia y la cola de prioridad mediante un montículo-min Dr. Eduardo RODRÍGUEZ T. (CINVESTAV) Algoritmos voraces 21 de marzo de / 45
20 1 Algoritmos voraces (greedy) Aplicaciones de los algoritmos voraces Change-making problem Minimum spanning tree (MST) Problema de codificación Codigos de Huffman Dr. Eduardo RODRÍGUEZ T. (CINVESTAV) Algoritmos voraces 21 de marzo de / 45
21 Ordena los arcos del grafo en forma no-decreciente respecto a sus longitudes Agrega al árbol un arco a la vez para producir el MST a través de una serie de bosques F 1, F 2,, F n 1 En cada iteración, agrega el próximo arco en la lista ordenada a menos que cree un ciclo Dr. Eduardo RODRÍGUEZ T. (CINVESTAV) Algoritmos voraces 21 de marzo de / 45
22 Dr. Eduardo RODRÍGUEZ T. (CINVESTAV) Algoritmos voraces 21 de marzo de / 45
23 Dr. Eduardo RODRÍGUEZ T. (CINVESTAV) Algoritmos voraces 21 de marzo de / 45
24 Dr. Eduardo RODRÍGUEZ T. (CINVESTAV) Algoritmos voraces 21 de marzo de / 45
25 Dr. Eduardo RODRÍGUEZ T. (CINVESTAV) Algoritmos voraces 21 de marzo de / 45
26 Dr. Eduardo RODRÍGUEZ T. (CINVESTAV) Algoritmos voraces 21 de marzo de / 45
27 Dr. Eduardo RODRÍGUEZ T. (CINVESTAV) Algoritmos voraces 21 de marzo de / 45
28 El algoritmo de Kruskal parece más fácil que el de Prim, pero es más difícil de implementar (verificación de ciclos) Verificación de ciclos: un ciclo se crea si y sólo si el arco agregado conecta vértices en el mismo componente conexo La complejidad es O(m log m) = O(m log n) usando las estructuras de datos adecuadas Dr. Eduardo RODRÍGUEZ T. (CINVESTAV) Algoritmos voraces 21 de marzo de / 45
29 1 Algoritmos voraces (greedy) Aplicaciones de los algoritmos voraces Change-making problem Minimum spanning tree (MST) Problema de codificación Codigos de Huffman Dr. Eduardo RODRÍGUEZ T. (CINVESTAV) Algoritmos voraces 21 de marzo de / 45
30 Permite resolver el problema single-source shortest paths Trabaja de manera similar al algoritmo de Prim, la diferencia es la forma de calcular las etiquetas numéricas: entre los vértices no presentes en el árbol, encuentra el vértice u con la más pequeña suma d v + w(u, v) donde v es un vértice con mínimo camino conocido, d v es la longitud del camino entre la fuente y v, y w(u, v) es la longitud del arco de v a u Dr. Eduardo RODRÍGUEZ T. (CINVESTAV) Algoritmos voraces 21 de marzo de / 45
31 Dr. Eduardo RODRÍGUEZ T. (CINVESTAV) Algoritmos voraces 21 de marzo de / 45
32 Dr. Eduardo RODRÍGUEZ T. (CINVESTAV) Algoritmos voraces 21 de marzo de / 45
33 Dr. Eduardo RODRÍGUEZ T. (CINVESTAV) Algoritmos voraces 21 de marzo de / 45
34 Dr. Eduardo RODRÍGUEZ T. (CINVESTAV) Algoritmos voraces 21 de marzo de / 45
35 Dr. Eduardo RODRÍGUEZ T. (CINVESTAV) Algoritmos voraces 21 de marzo de / 45
36 Dr. Eduardo RODRÍGUEZ T. (CINVESTAV) Algoritmos voraces 21 de marzo de / 45
37 No funciona para grafos con pesos negativos Aplicable a grafos dirigidos y no-dirigidos Eficiencia: O(n 2 ) para un grafo representado como una matriz de adyacencia ponderada y la cola de prioridad mediante un arreglo O(m log n) para un grafo representado como una lista de adyacencia y la cola de prioridad mediante un montículo-min Dr. Eduardo RODRÍGUEZ T. (CINVESTAV) Algoritmos voraces 21 de marzo de / 45
38 Problema de codificación 1 Algoritmos voraces (greedy) Aplicaciones de los algoritmos voraces Change-making problem Minimum spanning tree (MST) Problema de codificación Codigos de Huffman Dr. Eduardo RODRÍGUEZ T. (CINVESTAV) Algoritmos voraces 21 de marzo de / 45
39 Problema de codificación Problema de codificación Codificación: asignación de cadenas de bits a caracteres de un alfabeto Palabras del código: cadenas de bits asignadas a caracteres de un alfabeto Dos tipos de códigos: De longitud fija (ASCII) De longitud variable (Morse) Códigos libres de prefijos: ninguna palabra del código es prefijo de otra Problema: si las frecuencias de ocurrencia de los caracteres se conocen, cuál es el mejor código binario libre de prefijos? Dr. Eduardo RODRÍGUEZ T. (CINVESTAV) Algoritmos voraces 21 de marzo de / 45
40 Codigos de Huffman 1 Algoritmos voraces (greedy) Aplicaciones de los algoritmos voraces Change-making problem Minimum spanning tree (MST) Problema de codificación Codigos de Huffman Dr. Eduardo RODRÍGUEZ T. (CINVESTAV) Algoritmos voraces 21 de marzo de / 45
41 Codigos de Huffman Codigos de Huffman Cualquier árbol binario con arcos etiquetados con 0 o 1 resulta en un código libre de prefijos de los caracteres asignados a sus hojas El árbol binario óptimo que minimiza la longitud esperada (el peso promedio) de una palabra del código puede ser construido de la siguiente forma: Dr. Eduardo RODRÍGUEZ T. (CINVESTAV) Algoritmos voraces 21 de marzo de / 45
42 Codigos de Huffman Codigos de Huffman Inicializar n árboles de un nodo con los caracteres del alfabeto y los pesos de los arcos con sus frecuencias Repetir el siguiente paso n 1 veces: Unir dos árboles binarios con los pesos más pequeños en uno solo (subárboles izq. y der.) y fijar sus pesos como la suma de los pesos de ambos árboles Marcar los arcos que llevan a los subárboles izq. y der. con 0 y 1, respectivamente. Dr. Eduardo RODRÍGUEZ T. (CINVESTAV) Algoritmos voraces 21 de marzo de / 45
43 Codigos de Huffman Codigos de Huffman Dr. Eduardo RODRÍGUEZ T. (CINVESTAV) Algoritmos voraces 21 de marzo de / 45
44
45
ÁRBOLES CRISTIAN ALFREDO MUÑOZ ÁLVAREZ JUAN DAVID LONDOÑO CASTRO JUAN PABLO CHACÓN PEÑA EDUARDO GONZALES
ÁRBOLES CRISTIAN ALFREDO MUÑOZ ÁLVAREZ JUAN DAVID LONDOÑO CASTRO JUAN PABLO CHACÓN PEÑA EDUARDO GONZALES ÁRBOL Un árbol es un grafo no dirigido, conexo, sin ciclos (acíclico), y que no contiene aristas
Más detallesFrancisco J. Hernández López
Francisco J. Hernández López fcoj23@cimat.mx Estructura de datos no lineales donde cada componente o nodo puede tener uno o más predecesores (a diferencia de los árboles) y sucesores Un grafo esta formado
Más detallesApuntes de Teórico de Programación 3. Apuntes de Teórico PROGRAMACIÓN 3. Greedy. Versión 1.1
Apuntes de Teórico PROGRAMACIÓN 3 Greedy Versión 1.1 1 Índice Índice... Introducción... 3 Ejemplo 1 (problema de las monedas)... 3 Ejemplo (problema de la mochila)... 4 Aplicaciones del método Greedy a
Más detallesAlgoritmos y Estructuras de Datos III
Árboles Algoritmos y Estructuras de Datos III Árboles Definición: Un árbol es un grafo conexo sin circuitos simples. Árboles Teorema: Dado un grafo G = (V, X ) son equivalentes: 1. G es un árbol. 2. G
Más detallesAnálisis y Diseño de Algoritmos Árboles de Mínima Expansión (Minimum Spanning Trees) DR. JESÚS A. GONZÁLEZ BERNAL CIENCIAS COMPUTACIONALES INAOE
Análisis y Diseño de Algoritmos Árboles de Mínima Expansión (Minimum Spanning Trees) DR. JESÚS A. GONZÁLEZ BERNAL CIENCIAS COMPUTACIONALES INAOE Problema de Cableado de Circuitos Electrónicos 2 Diseño
Más detallesAlgoritmos de búsqueda exhaustiva
Dr. Eduardo A. RODRÍGUEZ TELLO CINVESTAV-Tamaulipas 31 de enero de 2018 Dr. Eduardo RODRÍGUEZ T. (CINVESTAV) Algoritmos de búsqueda exhaustiva 31 de enero de 2018 1 / 22 1 Algoritmos de búsqueda exhaustiva
Más detallesAlgoritmos Voraces. Diseño y Análisis de Algoritmos
Algoritmos Voraces Diseño y Análisis de Algoritmos Contenidos Contenidos 1 Introducción 2 Ejemplos básicos 3 Cambio de monedas 4 Problema de la mochila 5 Problemas de planificación de tareas 6 Patrones
Más detalles3.0.-ARBOLES ABARCADORES Y COMPONENTES CONEXOS CONCEPTO DE ARBOL ABARCADOR Y SU RELACION CON LOS RECORRIDOS.
3.0.-ARBOLES ABARCADORES Y COMPONENTES CONEXOS 3.1.- CONCEPTO DE ARBOL ABARCADOR Y SU RELACION CON LOS RECORRIDOS. 3.2.- BOSQUES Y COMPONENTES CONEXOS. NEXON LENIN CEFERINO POMPOSO Los árboles son particularmente
Más detallesTeoría de grafos y optimización en redes
Teoría de grafos y optimización en redes José María Ferrer Caja Universidad Pontificia Comillas Definiciones básicas Grafo: Conjunto de nodos (o vértices) unidos por aristas G = (V,E) Ejemplo V = {,,,,
Más detallesMinimum Spanning Tree (Árbol de Expansión Mínima) Agustín J. González ELO320: Estructura de datos y Algoritmos
Minimum Spanning Tree (Árbol de Expansión Mínima) Agustín J. González ELO320: Estructura de datos y Algoritmos 1 Introducción Lo que realmente se minimiza es el peso del árbol obtenido. No se minimiza
Más detallesAlgebra Matricial y Teoría de Grafos
Algebra Matricial y Teoría de Grafos Unidad 3: Nociones de teoría de grafos Luis M. Torres Escuela Politécnica del Litoral Quito, Enero 2008 Maestría en Control de Operaciones y Gestión Logística p.1 Contenido
Más detallesEstructura de Datos. Códigos de Huffman. Primer Semestre, Compresión de Archivos. Compresión de Archivos
Estructura de Datos Códigos de Huffman Prof.: Mauricio Solar Prof.: Lorna Figueroa Primer Semestre, 2 Los algoritmos estudiados hasta ahora han sido diseñados, en general, para que utilicen el menor tiempo
Más detallesTIPOS ABSTRACTOS DE DATOS EN HASKELL
TIPOS ABSTRACTOS DE DATOS EN HASKELL ÍNDICE GENERAL 1. Introducción a Haskell 2. Tipos abstractos de datos en Haskell 3. TAD Grafo 4. TAD Montículos 5. Bibliografía INTRODUCCIÓN A HASKELL 1. Introducción
Más detallesAlgoritmo de Kruskal
Algoritmo de Kruskal Curso de Teoría Algebraica de Grafos Facultad de Ingeniería Universidad de la República 4 de mayo de 202 Árboles Un árbol es un grafo conexo y acíclico (sin ciclos). Un bosque es un
Más detallesÁrboles: Árbol Abarcador Minimal CSI / ITESM
Árboles: Árbol Abarcador Minimal CSI / ITESM Árboles:Árbol Abarcador Minimal p.1/5 Árboles Abarcador (Spanning Tree): Definición Un árbol abarcador para un grafo G es un subgrafo de G que contien todos
Más detallesEstructuras de Datos y Algoritmos. Grafos
Estructuras de Datos y Algoritmos Grafos Definiciones Grafo modelo para representar relaciones entre elementos de un conjunto. Grafo: (V,E), V es un conjunto de vértices o nodos, con una relación entre
Más detallesTeoría de redes y optimización en redes
Teoría de redes y optimización en redes Pedro Sánchez Martín Contenidos Definiciones básicas Árbol generador mínimo de expansión Camino mínimo Algoritmo Dkstra Algoritmo Bellman-Ford Fluo máximo Fluo de
Más detallesAnálisis de algoritmos
Tema 10: Algoritmos ávidos M. en C. Edgardo Adrián Franco Martínez http://www.eafranco.com edfrancom@ipn.mx @edfrancom edgardoadrianfrancom 1 Contenido Introducción Algoritmos ávidos Forma general de un
Más detallesTeoría de Grafos. Herramientas de programación para procesamiento de señales
Teoría de Grafos Herramientas de programación para procesamiento de señales Indice Nociones básicas: Definiciones Ejemplos Propiedades Nociones avanzadas: Grafos planares Árboles Representación en computadora
Más detallesModelos de Redes: Árbol. M. En C. Eduardo Bustos Farías
Modelos de Redes: Árbol de expansión n mínimam M. En C. Eduardo Bustos Farías as Objetivos Conceptos y definiciones de redes. Importancia de los modelos de redes Modelos de programación n lineal, representación
Más detallesGrafos. Suponiendo que e = [u, v]. Entonces los nodos u y v se llaman extremos de e y u y v se dice que son nodos adyacentes o vecinos.
Grafos Los grafos son estructuras que constan de vértices o nodos y de aristas o arcos que conectan los vértices entre sí. Un grafo G consiste en dos cosas: 1. Un conjunto V de elementos llamados nodos
Más detallesParte de Algoritmos de la asignatura de Programación Master de Bioinformática. Grafos
Parte de Algoritmos de la asignatura de Programación Master de Bioinformática Grafos Web asignatura: http://dis.um.es/~domingo/algbio.html E-mail profesor: domingo@um.es Transparencias preparadas a partir
Más detallesAlgoritmos de búsqueda en grafos I
I Dr. Eduardo A. RODRÍGUEZ TELLO CINVESTAV-Tamaulipas 7 de febrero de 2018 Dr. Eduardo RODRÍGUEZ T. (CINVESTAV) Búsqueda en grafos I 7 de febrero de 2018 1 / 36 1 Representación computacional de grafos
Más detallesÁrboles. Un grafo no dirigido es un árbol si y sólo si existe una ruta unica simple entre cualquiera dos de sus vértices.
ÁRBOLES Árboles Un grafo conectado que no contiene circuitos simples. Utilizados desde 1857, por el matemático Ingles Arthur Cayley para contar ciertos tipos de componentes químicos. Un árbol es un grafo
Más detalles5.6 Árbol generador de un grafo
88 5.6 Árbol generador de un grafo Definición 5.59. Sea G un grafo simple. Un árbol generador de G es un subgrafo de G que es un árbol y contiene todos los vértices de G. Ejemplo 5.60. Un grafo y algunos
Más detallesÁrboles de Expansión Mínima. Matemática Discreta. Agustín G. Bonifacio UNSL
UNSL Árboles Definiciones y Ejemplos Caracterización Un árbol T es un grafo simple que satisface lo siguiente: si v y w son vértices en T, entonces existe una trayectoria simple única de v a w. Un árbol
Más detallesAlgoritmos de búsqueda en grafos II
II Dr. Eduardo A. RODRÍGUEZ TELLO CINVESTAV-Tamaulipas 12 de febrero de 2018 Dr. Eduardo RODRÍGUEZ T. (CINVESTAV) Búsqueda en grafos II 12 de febrero de 2018 1 / 26 1 Algoritmos de búsqueda en grafos Dr.
Más detallesAlgoritmos y Complejidad
Algoritmos y Complejidad Algoritmos greedy Pablo R. Fillottrani Depto. Ciencias e Ingeniería de la Computación Universidad Nacional del Sur Primer Cuatrimestre 2017 Algoritmos greedy Generalidades Problema
Más detallesARBOLES GENERADORES. Orlando Arboleda Molina. 16 de septiembre de Escuela de Ingeniería de Sistemas y Computación de La Universidad del Valle
ARBOLES GENERADORES Orlando Arboleda Molina Escuela de Ingeniería de Sistemas y Computación de La Universidad del Valle 16 de septiembre de 2008 Contenido Árboles generadores Algoritmo búsqueda por profundidad
Más detallesAlgoritmos y Estructuras de Datos III
Árboles Algoritmos y Estructuras de Datos III Árboles Definición: Un árbol es un grafo conexo sin circuitos simples. Árboles Teorema: Dado un grafo G = (V, X ) son equivalentes: 1. G es un árbol. 2. G
Más detalles5.4 Caminos mínimos: Algoritmo de Dijkstra
81 5.4 Caminos mínimos: Algoritmo de Dijkstra Al observar nuestro mapa de carreteras se pueden considerar las distancias en km que hay entre las ciudades, a cada arista se le asigna el valor correspondiente
Más detallesTema: Algoritmos para la ruta más corta en un Grafo.
Programación IV. Guía No. 10 1 Facultad: Ingeniería Escuela: Computación Asignatura: Programación IV Tema: Algoritmos para la ruta más corta en un Grafo. Objetivos Específicos Definir el concepto de camino
Más detallesÁrboles abarcadores mínimos: algoritmo de Prim y algoritmo de Kruskal.
Árboles abarcadores mínimos: algoritmo de Prim y algoritmo de Kruskal. Jose Aguilar 1 Grafo de carreteras entre ciudades Mcbo Coro Pto. Cabello Valera Bqto Valencia Maracay Caracas Acarigua Barinas San
Más detallesMST: dos algoritmos glotones. comp-420
MST: dos algoritmos glotones comp-420 Dos algoritmos glotones para MST Algoritmo de Kruskal. Algoritmo de Prim. Ambos pueden ejecutarse en un tiempo O(E log V) utilizando montículos binarios. Ambos algoritmos
Más detallesEste material es de uso exclusivo para clase de algoritmos y estructura de datos, la información de este documento fue tomada textualmente de varios
CLASE GRAFOS Este material es de uso exclusivo para clase de algoritmos y estructura de datos, la información de este documento fue tomada textualmente de varios libros por lo que está prohibida su impresión
Más detallesIntroducción al Análisis y Diseño de Algoritmos
Dr. Eduardo A. RODRÍGUEZ TELLO CINVESTAV-Tamaulipas 10 de enero de 2018 Dr. Eduardo RODRÍGUEZ T. (CINVESTAV) Introducción al ADA 10 de enero de 2018 1 / 22 1 Introducción al Análisis y Diseño de Algoritmos
Más detallesTema 4y 5. Algoritmos voraces. Algoritmos sobre grafos
Tema 4y 5. Algoritmos voraces. Algoritmos sobre grafos Objetivos: Estudio de la técnica de diseño de algoritmos voraces Estudio de algunos problemas clásicos: Indice: Mochila con fraccionamiento Algoritmos
Más detallesMatemáticas Discretas L. Enrique Sucar INAOE. Teoría de Grafos. Problema de los puentes de Königsberg [Euler]
Matemáticas Discretas L. Enrique Sucar INAOE Teoría de Grafos Problema de los puentes de Königsberg [Euler] Teoría de Grafos Definición y terminología Tipos de grafos Trayectorias y circuitos Isomorfismo
Más detallesMATROIDES Y EL ALGORITMO VORAZ
MATROIDES Y EL ALGORITMO VORAZ Natalia Castro - 19 de octubre de 2016 Algoritmos de Aproximación IMERL - Facultad de Ingeniería - UdelaR Edmonds loco-problem Edmonds se enfoca en algoritmos better than
Más detallesOBJETIVOS ÍNDICE BIBLIOGRAFÍA
OBJETIVOS Tema 9: GRAFOS Primera Parte Estructuras de Datos y Algoritmos Curso 2002/03 Definiciones formales de grafo y conceptos relacionados Estructuras de datos para representar grafos Algoritmos para
Más detallesTema: Recorrido de Grafos. Ruta más corta
PED104. Guía N 12 Página 1 Facultad: Ingeniería Escuela: Computación Asignatura: Programación con Estructuras de Datos Tema: Recorrido de Grafos. Ruta más corta Competencia Desarrolla sistemas de información
Más detallesTema: Los Grafos y su importancia para la optimización de redes.
Tema: Los Grafos y su importancia para la optimización de redes. Qué son los Grafos? Un grafo es una dupla G= {X,U}, donde X es un conjunto finito y no vacio de elementos llamados vértices y U es el conjunto
Más detalles1. Caminos Mínimos en un Grafo sin Pesos 2. Caminos Mínmos en un Grafo ponderado. 1. Algoritmo de Dijkstra
Tema - Soluciones Greedy para Problemas de Optimización sobre un Grafo Tema - Soluciones Greedy para Problemas de Optimización sobre un Grafo Germán Moltó Escuela Técnica Superior de Ingeniería Informática
Más detallesTodos los Pares de Rutas más Cortas (All-Pairs Shortest Paths) DR. JESÚS A. GONZÁLEZ BERNAL CIENCIAS COMPUTACIONALES INAOE
Todos los Pares de Rutas más Cortas (All-Pairs Shortest Paths) DR. JESÚS A. GONZÁLEZ BERNAL CIENCIAS COMPUTACIONALES INAOE Problema de Encontrar todos los Pares de Rutas más Cortas 2 Encontrar las rutas
Más detallesAlgoritmos glotones 2 (código de Huffman) mat-151
Algoritmos glotones 2 (código de Huffman) mat-151 Alonso Ramírez Manzanares Computación y Algoritmos 05.06.2009 Son técnicas muy efectivas para comprimir datos. Alcanzan una compresión de entre 20% y 90%
Más detallesEstructuras de Datos y Algoritmos. Curso 2009/2010. Tema 5: Algoritmos voraces
Estructuras de Datos y Algoritmos Facultad de Informática Universidad Politécnica de Valencia Curso 2009/2010 Tema 5: Algoritmos voraces FI UPV: Curso 2009/2010 TEMA 5. Algoritmos voraces Objetivos Estudio
Más detallesFrancisco J. Hernández López
Francisco J. Hernández López fcoj23@cimat.mx Sus aristas son pares de vértices no ordenados, es decir si hay un camino del vértice i al vértice j, será exactamente el mismo camino del vértice j al vértice
Más detallesMatemáticas Discretas
Coordinación de Ciencias Computacionales - INAOE Matemáticas Discretas Cursos Propedéuticos 2011 Ciencias Computacionales INAOE Dr. Enrique Muñoz de Cote jemc@inaoep.mx http://ccc.inaoep.mx/~jemc Oficina
Más detallesTema 2, 3 y 4 GRUPO 82 - INGENIERÍA INFORMÁTICA. Bernardo D Auria. 3 Diciembre Departamento de Estadística. Universidad Carlos III de Madrid
Bernardo D Auria Departamento de Estadística Universidad Carlos III de Madrid GRUPO 82 - INGENIERÍA INFORMÁTICA Diciembre 2008 Ejercicio T2-JN12 Comprueba que el problema lineal min x x 1 + x 2 2x x +
Más detallesSesión 4: Teoría de Grafos
Modelos Gráficos Probabilistas L. Enrique Sucar INAOE Sesión 4: Teoría de Grafos Problema de los puentes de Königsberg [Euler] Teoría de Grafos Definición y terminología Tipos de grafos Trayectorias y
Más detallesAnálisis de algoritmos
Practica 04: Codificación voraz de Huffman Entrega vía Web: 05 de Julio de 2015 M. en C. Edgardo Adrián Franco Martínez http://computacion.cs.cinvestav.mx/~efranco @efranco_escom edfrancom@ipn.mx 1 Contenido
Más detallesÁrboles generadores mínimos (MST) comp-420
Árboles generadores mínimos (MST) comp-420 Árboles generadores mínimos (MST) Sea G=(V,E) una gráfica conectada y no-dirigida con V vértices y E aristas. Cada arista (u,v) E tiene un peso w(u,v), que es
Más detallesTema 2: Grafos y Árboles. Algoritmos y Estructuras de Datos 3
Tema 2: Grafos y Árboles Algoritmos y Estructuras de Datos 3 1 ÍNDICE 2.1 Definiciones básicas: grafos y árboles 2.2 Representaciones de árboles y grafos 2.3 Algoritmos de recorrido de árboles binarios
Más detallesGrafos Eulerianos y Hamiltonianos. Algoritmos y Estructuras de Datos III
Grafos Eulerianos y Hamiltonianos Algoritmos y Estructuras de Datos III Grafos eulerianos Definiciones: Un circuito C en un grafo (o multigrafo) G es un circuito euleriano si C pasa por todos las aristas
Más detallesAnAnálisis de redes de transporte Tr. Muchas veces se utiliza en aplicaciones que nada tienen que ver con el transporte
AnAnálisis de redes de transporte Tr Muchas veces se utiliza en aplicaciones que nada tienen que ver con el transporte Resumen Antecedentes y definiciones El camino más corto Árbol de expansión mínima
Más detallesDefinición 1: Un grafo G es una terna ordenada (V(G), E(G), Ψ
Título: Un Arbol Natural Autor: Luis R. Morera onzález Resumen En este artículo se crea un modelo para representar los números naturales mediante un grafo, el cual consiste de de un árbol binario completo
Más detallesA5 Introducción a la optimización en redes
48 Materials David Pujolar Morales A5 Introducción a la optimización en redes Definición 1. Grafo finito. Sea un V un conjunto no vacío con un número finito de elementos y E una familia finita de pares
Más detallesAnálisis y Diseño de Algoritmos
Análisis y Diseño de Algoritmos Algoritmos Voraces DR. JESÚS A. GONZÁLEZ BERNAL CIENCIAS COMPUTACIONALES INAOE Introducción Siempre toman la mejor opción en cada momento (punto de decisión del algoritmo)
Más detallesCapítulo 4: Grafos Clase 4: Árboles
Capítulo 4: Grafos Clase 4: Árboles Matemática Discreta - CC3101 Profesor: Pablo Barceló P. Barceló Matemática Discreta - Cap. 4: Grafos 1 / 12 Árboles Los árboles son una clase particular de grafos que
Más detallesDefiniciones: conjuntos, grafos, y árboles. Agustín J. González ELO 320: Estructura de Datos y Algoritmos. 2002
Definiciones: conjuntos, grafos, y árboles Agustín J. González ELO 320: Estructura de Datos y Algoritmos. 2002 1 Conjuntos (sets) y Grafos (graphs) Un Conjunto es una colección de objetos distintos. No
Más detallesTema: Algoritmos para la ruta más corta en un Grafo.
Programación IV. Guía 10 1 Facultad: Ingeniería Escuela: Computación Asignatura: Programación IV Tema: Algoritmos para la ruta más corta en un Grafo. Objetivos Específicos Definir el concepto de camino
Más detallesEstructuras de Datos y Algoritmos: Boletín de Problemas del segundo parcial
Estructuras de Datos y Algoritmos: Boletín de Problemas del segundo parcial (Facultad de Informática) Curso 00 0 Estructuras de Datos y Algoritmos (FI-UPV) Curso 00 0 Árboles. Si la acción P fuera escribir
Más detallesRepresentación y manipulación de grafos: caminos, expansión, cortes y flujos
Un grafo G es un par de conjuntos G =(V,E) Representación y manipulación de grafos: caminos, expansión, cortes y flujos V = un conjunto de n vértices u, v, w V E = un conjunto de m aristas V = n, E = m
Más detallesCONTENIDO MODELOS PARA LA LOCALIZACION DE PLANTA
MODELOS PARA LA LOCALIZACION DE PLANTA PROFESOR: DR. JORGE ACUÑA A. 1 CONTENIDO Modelos de localización Modelos de optimización Modelo del centro de gravedad Modelo de distancias (Ardalan) Trayectorias
Más detallesANÁLISIS Y DISEÑO DE ALGORITMOS
ANÁLISIS Y DISEÑO DE ALGORITMOS CURSO 26/27 BOLETÍN DE PROBLEMAS: ALGORITMOS VORACES Ejercicio 1 Sean n personas, representadas por los Enteros : 1..n, puestas en círculo, y m, un Entero no negativo cualquiera,
Más detallesContenido. Contenido - IX. 1 Encapsulamiento a través de clases y objetos Introducción al lenguaje de programación Java...
Contenido - IX Contenido 1 Encapsulamiento a través de clases y objetos... 1 1.1 Introducción... 2 1.2 Clases y objetos... 2 1.2.1 Las clases... 2 1.2.2 Miembros de la clase... 3 1.2.3 Interfaz y encapsulamiento...
Más detallesAlgoritmos heurísticos y aproximados. Clase 6/10/09
Algoritmos heurísticos y aproximados Clase 6/10/09 Algoritmos aproximados y heurísticos para problemas NP-Hard Cómo resolver problemas NP-HARD? No pretendemos encontrar la mejor solución sino una buena
Más detallesUn grafo G = (V, E) se dice finito si V es un conjunto finito.
1 Grafos: Primeras definiciones Definición 1.1 Un grafo G se define como un par (V, E), donde V es un conjunto cuyos elementos son denominados vértices o nodos y E es un subconjunto de pares no ordenados
Más detallesCapítulo 8. Árboles. Continuar
Capítulo 8. Árboles Continuar Introducción Uno de los problemas principales para el tratamiento de los grafos es que no guardan una estructura establecida y que no respetan reglas, ya que la relación entre
Más detallesTeoría de Grafos I. 2. Describa tres situaciones prácticas en las cuales un grafo pueda ser útil.
UNIVERSIDAD CENTRAL DE VENEZUELA FACULTAD DE CIENCIAS ESCUELA DE COMPUTACION Matemáticas Discretas III (Cód. 6108) Práctica # 1 Teoría de Grafos I 1. Defina y de ejemplos de cada uno de los siguientes
Más detallesMetaheurísticas y heurísticas. Algoritmos y Estructuras de Datos III
Metaheurísticas y heurísticas Algoritmos y Estructuras de Datos III Metaheurísticas Heurísticas clásicas. Metaheurísticas o heurísticas modernas. Cuándo usarlas? Problemas para los cuales no se conocen
Más detallesDeseamos interconectar entre si todos los ordenadores de un edificio
Teoría de grafos Deseamos interconectar entre si todos los ordenadores de un edificio Tres problemas de conexión: Conectar una serie de ordenadores por pares Procurar que la distancia por cable entre dos
Más detallesFlujos de redes (Network Flows NF)
Fluos de redes (Network Flows NF). Terminología. Árbol generador mínimo. Camino mínimo 4. Fluo máximo 5. Fluo de coste mínimo TEORÍA DE GRAFOS. OPTIMIZACIÓN EN REDES Terminología Red o grafo (G) Nodos
Más detallesEstructuras de Datos. Practica 06: Codificación de Huffman
M. en C. Edgardo Adrián Franco Martínez http://www.eafranco.com edfrancom@ipn.mx @edfrancom edgardoadrianfrancom 1 Contenido Definición del problema Algoritmo de Huffman Pasos del código de Huffman Actividades
Más detallesTema 1: Introducción a la Teoría de Grafos
Tema 1: Introducción a la Teoría de Grafos MATEMÁTICA A DISCRETA Nociones básicas Subgrafos. Operaciones con grafos Formas de definir un grafo Isomorfismo de grafos Tema 1: 1 Nociones básicas: Grafo: G
Más detallesTEMA 5 El tipo grafo. Tipo grafo
TEMA 5 El tipo grafo PROGRAMACIÓN Y ESTRUCTURAS DE DATOS Tipo grafo 1. Concepto de grafo y terminología 2. Especificación algebraica. Representación de grafos.1. Recorrido en profundidad o DFS.2. Recorrido
Más detallesAlgoritmos Codiciosos y problemas de Optimización en Grafos
Algoritmos odiciosos y problemas de Optimización en Grafos B10 onceptos Un árbol es un grafo conexo y sin circuitos. Un árbol trivial es un grafo que consiste de un solo vértice. Un grafo sin circuitos
Más detallesTema 5 Árboles y Grafos.
Tema 5 Árboles y Grafos. Definiciones básicas de teoría de grafos. Un grafo consta de un conjunto de nodos, un conjunto de aristas y una correspondencia f del conjunto de aristas al conjunto de nodos.
Más detallesEstructura de datos y de la información Boletín de problemas - Tema 10
Estructura de datos y de la información Boletín de problemas - Tema 10 1. En el caso de que sea posible, dar un ejemplo de los siguientes puntos. Si no, explicar por qué no lo es. Considerar un valor genérico
Más detallesUNIVERSIDAD DE MANAGUA Al más alto nivel
UNIVERSIDAD DE MANAGUA Al más alto nivel Investigación de Operaciones Encuentro #3 Tema: Optimización de Redes: El problema del árbol de expansión mínima y el problema de costo mínimo Prof.: MSc. Julio
Más detalles1. GRAFOS : CONCEPTOS BASICOS
1. GRAFOS : CONCEPTOS BASICOS Sea V un conjunto finito no vacio y sea E V x V. El par (V, E) es un grafo no dirigido, donde V es un conjunto de vértices o nodos y E es un conjunto de aristas. Denotaremos
Más detallesAnálisis de algoritmos
Practica 03: Codificación voraz de Huffman M. en C. Edgardo Adrián Franco Martínez http://www.eafranco.com edfrancom@ipn.mx @edfrancom edgardoadrianfrancom 1 Contenido Definición del problema Algoritmo
Más detallesÁrboles. no es un árbol porque no es conexo. Sin embargo, cada componente conexa es un árbol y, este tipo de grafo se llama bosque.
Ejemplos Árboles Un grafo sin lazos, es un árbol si es conexo y no contiene ciclos. Tenemos que: es un árbol. no es un árbol porque contiene un ciclo. no es un árbol porque no es conexo. Sin embargo, cada
Más detallesCaminos y Flujos optimales. 2da y 3er clase 2007
Caminos y Flujos optimales 2da y 3er clase 2007 ESQUELETOS OPTIMALES (mínimo) Esqueleto de G =(X,U) es un subgrafo que es un árbol y que contiene todos los vértices de G. Esqueleto Mínimo de G = (X, U,
Más detallesAnálisis de Algoritmos Teoría de grafos
Análisis de Algoritmos Teoría de grafos Dra. Elisa Schaeffer elisa.schaeffer@gmail.com PISIS / FIME / UANL Teoría de grafos p. 1 Grafos Un grafo G es un par de conjuntos G = (V,E) Teoría de grafos p. 2
Más detallesTema 11. Estructura de datos Grafo
Tema 11. Estructura de datos Grafo http://aulavirtual.uji.es José M. Badía, Begoña Martínez, Antonio Morales y José M. Sanchiz {badia, bmartine, morales}@icc.uji.es Estructuras de datos y de la información
Más detallesGrafos. AMD Grado en Ingeniería Informática. AMD Grado en Ingeniería Informática (UM) Grafos 1 / 30
Grafos AMD Grado en Ingeniería Informática AMD Grado en Ingeniería Informática (UM) Grafos / 0 Objetivos Al finalizar este tema tendréis que: Conocer la terminología básica de la teoría de grafos. Pasar
Más detallesAlgorítmica y Complejidad
Departamento Informática Aplicada Algorítmica y omplejidad Tema Algoritmos sobre Grafos urso 0- Grafos. onceptos, Definiciones y Representación. onectividad y recorrido. Árboles de expansión 4. aminos
Más detallesGrafos. 19 de diciembre de 2013
Grafos 19 de diciembre de 2013 Grafo Un grafo es un conjunto, no vacío, de objetos llamados vértices (o nodos) y una selección de pares de vértices, llamados aristas (edges en inglés) que pueden ser orientados
Más detallesCaminos y Flujos optimales. Introducción a la Investigación de Operaciones 2007
Caminos y Flujos optimales Introducción a la Investigación de Operaciones 2007 Contenido Definiciones básicas. Conexidad. Clausura transitiva. Esqueletos y caminos optimales. Redes. Flujos. Algoritmo de
Más detallesAlgoritmos y Complejidad. Generalidades. Generalidades. Algoritmos greedy. Problema de la mochila. Caminos más cortos. Pablo R.
Algoritmos greedy Algoritmos greedy Pablo R. Fillottrani Depto. Ciencias e Ingeniería de la Computación Universidad Nacional del Sur Primer Cuatrimestre 2014 Generalidades Scheduling de procesos Problema
Más detallesAlgorítmica y Complejidad. Tema 4 Algoritmos sobre grafos.
Algorítmica y Complejidad Tema. Algorítmos sobre grafos. Conceptos, Definiciones y Representación.. Conectividad y recorrido.. Árboles de expansión.. Caminos mínimos. Algorítmos sobre grafos. Conceptos,
Más detallesFundamentos de Investigación de Operaciones Modelos de Grafos
Fundamentos de Investigación de Operaciones de junio de 00 Muchos problemas de optimización puedes ser analizados y resueltos a través de representaciones gráficas. Tal es el caso de los problemas de planificación
Más detallesConceptos Fundamentales del Análisis de Algoritmos
Conceptos Fundamentales del Análisis de Algoritmos Dr. Eduardo A. RODRÍGUEZ TELLO CINVESTAV-Tamaulipas 15 de enero de 2018 Dr. Eduardo RODRÍGUEZ T. (CINVESTAV) Conceptos Fundamentales del Análisis 15 de
Más detallesCentro Asociado Palma de Mallorca. Tutor: Antonio Rivero Cuesta
Centro Asociado Palma de Mallorca Lógica y Estructuras Discretas Tutor: Antonio Rivero Cuesta Tema 5 Teoría de Grafos Conceptos Básicos Un grafo consta de: Grafo Un conjunto de nodos, Un conjunto de aristas
Más detallesCompresión. UCR ECCI CI-2414 Recuperación de Información Prof. M.Sc. Kryscia Daviana Ramírez Benavides
UCR ECCI CI-2414 Recuperación de Información Prof. M.Sc. Kryscia Daviana Ramírez Benavides Introducción Grandes cantidades de información textual en la Internet. Se desea representar esta información con
Más detallesGrafos: algunas definiciones
Grafos: algunas definiciones Un grafo dirigido G es un par (V, E), donde V es un conjunto finito de nodos (o vértices) y E es una relación binaria sobre V. Un grafo no dirigido G es un par (V, E), donde
Más detalles