Algoritmos Voraces - Dijkstra

27
Algoritmos voraces Ing. Carlos Uscamayta

Transcript of Algoritmos Voraces - Dijkstra

Page 1: Algoritmos Voraces - Dijkstra

Algoritmos voracesIng. Carlos Uscamayta

Page 2: Algoritmos Voraces - Dijkstra

Algoritmos Voraces

Algoritmo de Disjktra

Problemas

Page 3: Algoritmos Voraces - Dijkstra

Algoritmos voracesTambien conocidos como :

Page 4: Algoritmos Voraces - Dijkstra

Ávido

Page 5: Algoritmos Voraces - Dijkstra

Devorador

Page 6: Algoritmos Voraces - Dijkstra

Goloso

Page 7: Algoritmos Voraces - Dijkstra

Pero que son ?

Page 8: Algoritmos Voraces - Dijkstra

Se los conoce asi por que en cada paso , el algoritmo escoge el mejor “pedazo” que es capaz de “comer” sin preocuparse del futuro.

Page 9: Algoritmos Voraces - Dijkstra

Nunca deshace una decisión ya tomada:

Una vez incorporado un candidato a la solución permanece ahí hasta el final..

Page 10: Algoritmos Voraces - Dijkstra

Cada vez que un candidato es rechazado, lo es para siempre.

Page 11: Algoritmos Voraces - Dijkstra

Pero como funcionan ?

Page 12: Algoritmos Voraces - Dijkstra

El algoritmo elige en cada paso al mejor elemento posible (elemento mas prometedor).

Page 13: Algoritmos Voraces - Dijkstra

Se elimina ese elemento del conjunto de candidatos.

Page 14: Algoritmos Voraces - Dijkstra

Nunca deshace una decisón ya tomada: El candidato incorporado permanece ahí hasta el final, y si es rechazado, lo es para siempre.

Page 15: Algoritmos Voraces - Dijkstra

Ejemplos de Algoritmos voraces

KRUSKALPRIM

Page 16: Algoritmos Voraces - Dijkstra

El Algoritmo de Dijkstra

Page 17: Algoritmos Voraces - Dijkstra

El algoritmo de Dijkstra, también llamado algoritmo de caminos mínimos, es un algoritmo para la determinación del camino más corto dado un vértice origen al resto de los vértices en un grafo con pesos en cada arista. Su nombre se refiere a Edsger Dijkstra, quien lo describió por primera vez en 1959

Page 18: Algoritmos Voraces - Dijkstra

Pero como funcionan ?

Page 19: Algoritmos Voraces - Dijkstra

1.- Se considera que el nodo origen esta resuelto y el resto de los nodos se consideran no resueltos

Page 20: Algoritmos Voraces - Dijkstra

2.- Comenzando por el nodo origen se calculan las distancias a los nodos conectados.

Page 21: Algoritmos Voraces - Dijkstra

3.- Se sitúan las distancias en el diagrama de red, especificando entre paréntesis de que nodo proviene esa distancia.

Page 22: Algoritmos Voraces - Dijkstra

4.- Del resto de nodos no resueltos que tengan ya una distancia desde el nodo origen se selecciona aquel nodo no resuelto que tenga menor distancia, a partir de este momento se considerara a este nodo como el nodo resuelto y se calcularan las distancias desde el resto de los nodos no resueltos

Page 23: Algoritmos Voraces - Dijkstra

5.-volver al paso 2 se continua aplicando esta metodología hasta que todos los nodos tengan distancia mínima desde el origen y estén resueltos.

Page 24: Algoritmos Voraces - Dijkstra

Pseudocodigo

Page 25: Algoritmos Voraces - Dijkstra

PROBLEMAS :

Page 26: Algoritmos Voraces - Dijkstra
Page 27: Algoritmos Voraces - Dijkstra

Carlos UscamaytaScrum Team Member - Software Architect

INNOVISION

[email protected]