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

INSTITUTO POLITECNICO NACIONAL

UPIICSA
MODELOS DE TRANSPORTE
Modelo de Redes
Profesor: Javier Hernández Hernández
Secuencia: 2TM61

Integrantes:
• Flores Peralta David Antonio
• Martínez Abrego Brayan
• Pérez Álvarez Alan Raymundo
• Rivera Yescas Jorge
• Zugarazo Casas Jorge
RUTA MÁS CORTA

El Problema del Camino más Corto (o ruta más


barata) consiste en encontrar una ruta o camino
óptimo entre un nodo fuente y un nodo destino, los
cuales están enlazados a través de una red con
arcos que poseen un cierto atributo, el cual puede
ser costo, distancia, tiempo, etc.
Consideremos el siguiente diagrama donde los números asignados a cada uno de los
arcos representan la distancia en kilómetros de un nodo a otro. Se desea encontrar la ruta
con la distancia mínima para ir del nodo 1 al nodo 8.
El tamaño reducido de la red anterior permite encontrar el camino más
corto simplemente enumerando las distintas alternativas que comenzando
en el nodo 1 permita llegar al nodo 8. De esta forma las rutas posibles son:
● Ruta 1-2-5-7-8: 4+8+17+9=38[km]
● Ruta 1-3-4-7-8: 3+12+20+9=44[km]
● Ruta 1-3-4-6-8: 3+12+2+22=39[km]
● Ruta 1-3-4-8: 3+12+15=30[km]
● Ruta 1-3-6-8: 3+4+22=29[km]
La ruta o camino más corto esta dada por la secuencia 1-3-6-8 con una
distancia total de 29[km].

A continuación se formula un modelo de Programación Entera que permite


extender este tipo de resultados a un problema de estas características:

Variables de Decisión:
Función Objetivo: Minimizar la distancia total en [km] dada por la siguiente
expresión:

RESTRICCIONES:
1. La primera restricción (1) garantiza que sólo un nodo (entre el 2 y el 3) pueda ser el que se visita a
continuación de comenzar en el nodo 1.
2. La restricción (2) determina que si se visito el nodo 2 después del nodo 1, entonces necesariamente
el nodo 5 será visitado después del nodo 2.
3. La restricción (3) permite verificar que si el nodo 3 fue visitado luego del nodo 1, entonces a
continuación se visita el nodo 4 o el nodo 6 (sólo uno de ellos).
4. La restricción (4) establece que si el nodo 5 fue visitado luego del nodo 2, entonces el nodo 7 debe
ser visitado luego del nodo 5.
5. La restricción (5) garantiza que si el nodo 4 fue visitado luego del nodo 3, entonces a continuación
se visita uno de los siguientes nodo: 7, 8 o 6.
6. La restricción (6) indica que si el nodo 6 fue visitado inmediatamente luego de estar en el nodo 3 o
4, a continuación se visita el nodo 8.
7. La restricción (7) determina que si el nodo 7 fue visitado inmediatamente luego de estar en el nodo 4
o 5, a continuación se visita el nodo 8.
8. Finalmente la restricción (8) asegura que ya sea el nodo 7, 4 o 6 sea el último en visitar previo a
terminar la ruta en el nodo 8.
Al implementar en Solver el problema del Camino más Corto o Ruta Mínima
anterior se alcanzan los siguientes resultados:

Donde se corrobora que la ruta más corta (solución óptima) corresponde al


camino 1-3-6-8 con una distancia total de 29[km] (valor óptimo).
Árbol de Expansión
Mínima
Definiciones

► Árbol: Es una representación gráfica que no lleva ciclo

► Árbol de expansión: Un árbol de expansión es aquel árbol que enlaza


todos los nodos de la red, de igual manera no permite la existencia de
ciclo

► Ciclo: Un ciclo corresponde a la cadena que une a un nodo con sigo


mismo, en el siguiente ejemplo el ciclo está compuesto por la cadena [4-2,
2-5, 5-7, 7-4].

► Ramal orientado: Un ramal o arco orientado es aquel que tiene un sentido


determinado, es decir que posee un nodo fuente y un nodo destino.
Definiciones
► Nodo fuente: El nodo fuente es aquel nodo en el cual
todos sus ramales se encuentran orientados hacia
afuera.
► Nodo destino: El nodo destino es aquel nodo en el cual
todos sus ramales se encuentran orientados hacia él.
Algoritmo de Árbol de expansión mínima
► El algoritmo del árbol de expansión mínima es un
modelo de optimización de redes que consiste en
enlazar todos los nodos de la red de forma directa
y/o indirecta con el objetivo de que la longitud total
de los arcos o ramales sea mínima (entiéndase por
longitud del arco una cantidad variable según el
contexto operacional de minimización, y que puede
bien representar una distancia o unidad de
medida).Sean
Pasos para la resolución
► Paso 0: Conceptualización del algoritmo
Definir los conjuntos C = {ø} y Č = {N}, es decir que antes del paso 1 no se han enlazado
0 0

de forma permanente nodo alguno, y por ende el conjunto que representa a los nodos
que hacen falta por enlazarse de forma permanente es igual a la cantidad de nodos que
existen en la red.
► Paso 1
Se debe de escoger de manera arbitraria un nodo en el conjunto Č llamado i el
0

cual será el primer nodo permanente, a continuación se debe de actualizar el


conjunto C = {i}, que significa que al tiempo en que el conjunto C gana el
1 1

elemento i el conjunto Č pierde el elemento i por ende ahora será igual a Č = N -


0 1

{i}, además se debe actualizar el subíndice de los conjuntos k, el cual ahora será
igual a 2.
► Paso 2: Generar “K”
Se debe de seleccionar un nodo j del conjunto ČK-1 ("k-1" es el subíndice que indica que
se está haciendo referencia al conjunto de la iteración inmediatamente anterior) el
cual tenga el arco o ramal con menor longitud con uno de los nodos que se
encuentran en el conjunto de nodos de enlace permanente CK-1.

Una vez seleccionado se debe de enlazar de forma permanente lo cual representa que
pasa a formar parte del conjunto de enlaces permanentes y deja de formar parte del
conjunto que todavía se debe conectar para lograr la expansión. Al actualizar el
algoritmo en este paso los conjuntos deben de quedar de la siguiente forma.

CK = CK-1 + {j} mientras que ČK = ČK-1 - {j}

El paso general que define k que al mismo tiempo representa a las iteraciones debe de
ejecutarse toda vez que el conjunto ČK no sea vacío, cuando este conjunto sea igual a
vacío se tendrá el árbol de expansión mínima.

El entendimiento del algoritmo desde el punto de vista algebraico no es quizá el más


simple, sin embargo mediante el ejemplo gráfico se verá que es un algoritmo muy
sencillo de elaborar.
Problema

► De acuerdo a este problema aplicaremos el algoritmo


de árbol de expansión mínima
Pasos
► Paso 0: Definimos
Co (conjunto de nodos enlazados permanentemente):
Co = {ᴓ}
Ĉo (conjunto de nodos pendientes por enlazar):
Ĉo = {1,2,3,4,5,6,7,8}
► Paso 1: Se define i que es C5= {1,3,6,4,2} Č5 = {5,7,8}
el nodo permanente
C6= {1,3,6,4,2,5} Č6 = {7,8}
C1 = {i} = {1} y Č1 = {N - i} =
C7= {1,3,6,4,2,5,7} Č7 = {8}
{2,3,4,5,6,7,8}
C8= {1,3,6,4,2,5,7,8} Č8 = {ᴓ}
► Paso 2: Se elige el primer
ramal cuya distancia sea
la mínima para
posteriormente seguir
con el procedimiento
hasta obtener el árbol de
expansión mínima

C2= {1,3} Č2 = {2,4,5,6,7,8}


C3= {1,3,6} Č3 = {2,4,5,7,8}
C4= {1,3,6,4} Č4 = {2,5,7,8}
RESULTADO:

Se obtuvo un resultado de 47 kilómetros

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