2 REGLAMENTO RM 0912-2024 DE MODALIDADES DE GRADUACIÓN_.pptx
Floyd
1. Es un algoritmo de análisis
sobre grafos para encontrar el camino
mínimo en grafos dirigidos ponderados.
El algoritmo encuentra el camino entre
todos los pares de vértices en una única
ejecución.
Esto es similar a construir una tabla con
todas las distancias mínimas entre pares
de ciudades de un mapa, indicando la
ruta a seguir para ir de la primera ciudad
a la segunda.
2. Esto puede verse de la siguiente
manera:
*Sea G= (V, A) un digrafo en el cual cada arco tiene asociado un costo
no negativo. El problema es hallar para cualquier par de vértices (v,
w) el camino más corto de v a w.
*G= (V, A), V= {1,...,n} y C[i, j] es el costo del arco que va de i a j.
*El algoritmo calcula la serie de matrices
*Ak[i, j] significa el costo del camino más corto que va de i a j y que
no pasa por algún vértice mayor que k.
*El objetivo es calcular An[i, j]
4. Inicializamos las dos matrices. Una para las ponderaciones
(peso, coste) y otra con los recorridos.
PONDERACIONES RECORRIDOS
A B C D
A - 3 4 ∞
B ∞ - ∞ 5
C ∞ ∞ - 3
D 8 ∞ ∞ -
A B C D
A A B C D
B A B C D
C A B C D
D A B C D
Los valores infinito significa
que para ese par de vértices
no existe una arista que los
une de forma directa.
Llenamos cada columna con
la letra correspondiente.
5. Evaluamos cada vértice (A, B, C, D). Empezamos con el
vértice A. Tomamos fila y columna correspondientes al
vértice A.
Sumamos
A B C D
A - 3 4 ∞
B ∞ - ∞ 5
C ∞ ∞ - 3
D 8 11 12 -
A B C D
A A B C D
B A B C D
C A B C D
D A A A D
Sumamos cada valor de la
columna con el las filas y
reemplazamos en la fila del
elemente que estamos
evaluando, conservando el
valor mínimo.
En la posición que cambiamos
en la matriz anterior
reemplazamos por la letra a la
cual estamos evaluando.
6. Procedemos a evaluar B:
A B C D
A - 3 4 8
B ∞ - ∞ 5
C ∞ ∞ - 3
D 8 11 12 -
A B C D
A A B C B
B A B C D
C A B C D
D A A A D
7. Procedemos a evaluar C:
A B C D
A - 3 4 7
B ∞ - ∞ 5
C ∞ ∞ - 3
D 8 11 12 -
A B C D
A A B C C
B A B C D
C A B C D
D A A A D
8. Procedemos a evaluar D:
A B C D
A - 3 4 7
B 13 - 17 5
C 11 14 - 3
D 8 11 12 -
A B C D
A A B C C
B D B D D
C D D C D
D A A A D
9. Una vez terminados los recorridos podemos proceder
a encontrar el camino mínimo que necesitamos
encontrar a partir de las dos matrices obtenidas.
Por ejemplo: El camino mínimo para ir de A a D,
observo en la matriz de transición que tengo que
pasar por C, luego observo de C a D dice que tengo
que pasar por D, pero como es el objetivo se
termina, y sería: A-C-D con peso 7.