Вы находитесь на странице: 1из 6

ALGORITMO DE FLOYD

Chavez Cerna Paolo, Chirinos Samame Victor, Medina Apaico Walter, Neciosup Galeano Kevin,
Palomino Ballona Jeferson, Ramirez Dueñas Fernando, Rocha Espinoza Edward

Asignatura: Matemática Discreta

Facultad de Ingeniería Industrial y de Sistemas

Universidad Nacional de Ingeniería

RESUMEN Es por esa razón que decidimos analizar el


caso de un estudiante en particular el cual
En el presente trabajo analizaremos el se tiene que trasladar desde las
problema que tiene un estudiante promedio proximidades al mercado UNICACHI
de la Universidad Nacional de Ingeniería ubicado en el distrito de Villa El Salvador
para desplazarse desde su vivienda hasta hasta la Universidad Nacional de Ingeniería
su centro de estudio, en el mínimo tiempo en El Rímac para lo cual se tomarán en
posible, para tal análisis y resolución de su cuenta análisis de paraderos y rutas
problema utilizaremos como herramienta el estratégicas de tal manera que se pueda
algoritmo de Floyd el cual de una manera conseguir el mínimo tiempo de traslado;
didáctica y sencilla nos brinda un análisis para contar con datos lo más exactos
certero sobre la ruta óptima a tomar por el posibles se tomará el tiempo promedio
estudiante. durante una semana que demora un
autobús de un paradero a otro en un
horario fijo de salida del estudiante que es
INTRODUCCIÓN aproximadamente 8:00 a.m., para realizar
este estudio obviamos las situaciones
imprevistas que son muy pocos probables
En este trabajo utilizaremos como como accidentes automovilísticos en el
herramienta de solución el algoritmo de recorrido de los buses que pueda generar
Floyd el cual nos ayudará a encontrar el embotellamiento o alguna otra situación
tiempo óptimo para el traslado de un donde el tiempo de recorrido tenga una
estudiante hacia su centro de estudio. desviación considerable respecto al tiempo
Para el uso de dicho algoritmo se utilizaran promedio
tablas de recorridos y ponderaciones que
nos ayudar a observar de forma didáctica el
desarrollo de la solución, además en el OBJETIVOS
gráfico de paraderos y rutas; podemos
analizar rutas alternas en caso que ocurra OBJETIVO GENERAL
embotellamientos en las pistas para
finalmente dar como solución la ruta en la Hacer uso de herramientas matemáticas
cual se invierta el menor tiempo posible para la solución de distintos problemas
para llegar a la Universidad nacional de reales que afrontamos en la vida cotidiana.
Ingeniería partiendo de las proximidades al
Mercado UNICACHI ubicado en el distrito OBJETIVOS ESPECÍFICOS
de Villa El Salvador.
1. Encontrar la ruta óptima para el
PRESENTACIÓN DEL PROBLEMA traslado de un estudiante desde su
hogar a su centro de estudio
Uno de los problemas repetitivos que tiene 2. Analizar rutas alternas en caso de
que afrontar un estudiante de la UNI es el problemas de congestión vehicular
continuo tráfico y congestionamiento o de otra índole.
vehicular de la ciudad. 3. Utilización correcta del algoritmo de
floyd para la solución de problemas
cotidianos
DESCRIPCIÓN DE LA SOLUCIÓN mientras que la matriz R contiene los
penúltimos vértices de los caminos óptimos
Para dar inicio a nuestro análisis tenemos que unen dos vértices, lo cual permite
que tener conocimientos previos al reconstruir cualquier camino óptimo para ir
ALGORITMO DE FLOYD como son la de un vértice a otro.
teoría de grafos, una vez obtenido estos Se construyen dos tablas:
conocimiento nos será posible modelar un TABLA P: Se recoge el tiempo que demora
esquema en el cual tenga elementos como
nodos, aristas y la dirección de estas. un bus en su traslado de un paradero a
otro
El algoritmo en estudio nos permitirá Paradero A: Mercado Unicachi
encontrar el camino más corto de un nodo Paradero B: Parque Mariscal Castilla
a otro dentro de un conjunto de n Paradero C: UNI
elementos; como ya se sabe un algoritmo Paradero D: Ovalo Higuereta
es una serie de pasos sistemáticos con un
orden establecido, los siguientes pasos a Paradero E: UPC Monterrico
seguir en este algoritmo en particular serán Paradero F: Mall Santa Anita
detallados a continuación:
TABLA P
El algoritmo representa una red de n nodos
como una matriz cuadrada de orden n, la A B C D E F
llamaremos matriz P o también llamada
matriz de ponderaciones. De esta forma, el A - 80 ∞ 70 70 ∞
valor Pij representa el coste de ir desde el
nodo i al nodo j, inicialmente en caso de no B ∞ - 70 50 ∞ ∞
existir un arco entre ambos, el valor Pij será
infinito. C ∞ ∞ - ∞ ∞ ∞
Definiremos otra matriz R o también
llamada matriz de recorridos, también D ∞ 50 ∞ - 50 ∞
cuadrada de orden n, cuyos elementos van
a ser los nodos predecesores en el camino E ∞ ∞ ∞ ∞ - 20
hacia el nodo origen, es decir, el valor Rij
representará el nodo predecesor a j en el F ∞ ∞ 40 ∞ ∞ -
camino mínimo desde i hasta j. Inicialmente
se comienza con caminos de longitud 1,
por lo que Rij = i.
TABLA R: Se recogen una serie de datos que
Las diagonales de ambas matrices al final de proceso ayudará de forma
representan el coste y el nodo predecesor didáctica a entender la solución.
para ir de un nodo a sí mismo, por lo que
no sirven para nada, estarán bloqueadas.

TABLA R
• Formar las matrices iniciales P y R.
• Se toma k=1 A B C D E F
• Se selecciona la fila y la
columna k de la matriz P y A A B C D E F
entonces, para i y j,
con i≠k, j≠k e i≠j, hacemos: B A B C D E F

En caso contrario, dejamos las matrices C A B C D E F


como están.
• Si k ≤ n, aumentamos k en una D A B C D E F
unidad y repetimos el paso anterior,
en caso contrario páramos las E A B C D E F
iteraciones.
La matriz final P contiene los costes F A B C D E F
óptimos para ir de un vértice a otro,
En la primera reiteración seleccionamos la
B ∞ - 70 50 ∞ ∞
primera fila y la primera columna.
Sumamos cada elemento de una fila con su C ∞ ∞ - ∞ ∞ ∞
correspondiente columna (en notación
matricial el aij con el aji). D ∞ 50 120 - 50 ∞
A B C D E F
E ∞ ∞ ∞ ∞ - 20
A - 80 ∞ 70 70 ∞
F ∞ ∞ 40 ∞ ∞ -
B ∞ - 70 50 ∞ ∞
Reemplazamos en la tabla de las letras
C ∞ ∞ - ∞ ∞ ∞ (TABLA R) por la letra de la reiteración que
se modificó.
D ∞ 50 ∞ - 50 ∞
A B C D E F
E ∞ ∞ ∞ ∞ - 20
A A B B D E F
F ∞ ∞ 40 ∞ ∞ -
B A B C D E F

Tras esto se reemplaza el número de la C A B C D E F


celda ajj por la suma obtenida siempre que
sea menor al antiguo valor (en caso de que D A B B D E F
sean iguales se escoge arbitrariamente
E A B C D E F
entre reemplazarlo y no reemplazarlo). En
la tabla de la derecha se señalan las casillas F A B C D E F
correspondientes a los números
.
cambiados, y se reemplazan por el número
Seguimos con la tercera reiteración.
que se encuentre en la columna
correspondiente a la reiteración que tiene
lugar. A B C D E F

A - 80 150 70 70 ∞
A B C D E F

A A B C D E F B ∞ - 70 50 ∞ ∞

B A B C D E F C ∞ ∞ - ∞ ∞ ∞

D ∞ 50 120 - 50 ∞
C A B C D E F

D A B C D E F E ∞ ∞ ∞ ∞ - 20

E A B C D E F F ∞ ∞ 40 ∞ ∞ -

F A B C D E F
A B C D E F
Como no hubo cambio, se eligen la A A B B D E F
segunda fila y la segunda columna y se
repite el proceso. B A B C D E F
A B C D E F
C A B C D E F
A - 80 150 70 70 ∞
D A B B D E F
E A B C D E F
A B C D E F
F A B C D E F
A A B B D E E

Seguimos con la cuarta reiteración.


B A B C D D F

C A B C D E F
A B C D E F
D A B B D E E
A - 80 150 70 70 ∞
E A B C D E F
B ∞ - 70 50 100 ∞
F A B C D E F
C ∞ ∞ - ∞ ∞ ∞

D ∞ 50 120 - 50 ∞

E ∞ ∞ ∞ ∞ - 20 Por último realizamos la sexta reiteración

F ∞ ∞ 40 ∞ ∞ - A B C D E F

A - 80 130 70 70 90
A B C D E F
B ∞ - 70 50 100 ∞
A A B B D E F
C ∞ ∞ - ∞ ∞ ∞
B A B C D D F
D ∞ 50 110 - 50 70
C A B C D E F
E ∞ ∞ 60 ∞ - 20
D A B B D E F
F ∞ ∞ 40 ∞ ∞ -
E A B C D E F

F A B C D E F A B C D E F

A A B F D E E
Seguimos con la quinta reiteración.
B A B C D D F

A B C D E F C A B C D E F

A - 80 150 70 70 90 D A B F D E E

B ∞ - 70 50 100 ∞ E A B F D E F

C ∞ ∞ - ∞ ∞ ∞ F A B C D E F

D ∞ 50 120 - 50 70
La tabla final:
E ∞ ∞ ∞ ∞ - 20
TABLA M
F ∞ ∞ 40 ∞ ∞ - A B C D E F
A - 80 130 70 70 90 A B C D E F

B ∞ - 70 50 100 ∞ A A B F D E E

C ∞ ∞ - ∞ ∞ ∞ B A B C D D F

D ∞ 50 110 - 50 70 C A B C D E F

D A B F D E E
E ∞ ∞ 60 ∞ - 20
E A B F D E F
F ∞ ∞ 40 ∞ ∞ -
F A B C D E F

TABLA N Se puede apreciar que el tiempo óptimo


para que el estudiante se desplace hacia a
A B C D E F la UNI implica que vaya de su casa hasta
UPC Monterrico y luego al Mall Santa Anita
A A B F D E E para finalmente llegar a la UNI.

B A B C D D F CONCLUSIONES

C A B C D E F 1. El algoritmo de Floyd propuesto en


este trabajo permite obtener la
D A B F D E E secuencia de segmentos de
recorridos mínimos entre la
E A B F D E F
totalidad de los nodos en un grafo.
F A B C D E F 2. El algoritmo es correcto desde el
punto de vista computacional, ya
que resuelve el problema
La tabla M indica la distancia que hay de un
planteado para la estructura de
punto a otro por el mejor camino y la tabla
N nos indica la ruta que hay que tomar. datos de entrada definida, y su
tiempo de ejecución es finito.
RESULTADOS 3. Este algoritmo se puede aplicar en
el diseño de rutas de transporte
Al agregar los datos y realizar los para la disminución del tiempo del
algoritmos de Floyd, se obtienen los recorrido.
siguientes resultados:
BIBLIOGRAFÍA

A B C D E F ● http://algoritmofloywarshall.blogspot.pe/
Corporacion/Denis Arroyo/ Universitaria
A - 80 130 70 70 90 Rafael Nuñez/Algoritmo de Floyd-
Warshall/16 de abril de 2013
B ∞ - 70 50 100 ∞ consultado el 10 de abril de 2018

C ∞ ∞ - ∞ ∞ ∞ ● Kleene, S. C. (1956). «Representation


of events in nerve nets and finite
D ∞ 50 110 - 50 70 automata». En C. E.
Shannon and John
E ∞ ∞ 60 ∞ - 20 McCarthy. Automata Studies. Princeton
University Press. pp. 3-42.
F ∞ ∞ 40 ∞ ∞ -
● Cormen, Thomas H.; Leiserson,
Charles E.; Rivest, Ronald
L. (1990). Introduction to
Algorithms (1º Edición edición). MIT
Press y McGraw-Hill.

● Sección 26.2, "The Floyd–


Warshall algorithm",

● Sección 26.4, "A general


framework for solving path
problems in directed
graphs",

● «Algorithm 97: Shortest


Path». Communications of
the ACM 5 (6): 345.

ANEXOS

Вам также может понравиться