Estrategia de prompts, primeras ideas para su construcción
5.2 la ruta mas corta
1. Optimización de Redes
Unidad 5
M.C. ADRIANA NIETO CASTELLANOS
5.2 PROBLEMA DE LA RUTA MÁS CORTA
Cualquier organización que entregue o recoja material de diferentes lugares se enfrenta al problema
de encontrar la ruta más corta o económica, por ejemplo un operador de una flotilla de camiones,
que ha aceptado un contrato para entregar varias cargas de material de un origen a un destino.
En la siguiente red mostramos las rutas posibles que los camiones pueden tomar junto con las
distancias en kilómetros entre cada uno de los nodos. Para problemas pequeños el asunto fácil, listar
todas las rutas posibles y escoger la más corta, pero cuando el problema se vuelve más complejo, esa
clase de método de solución se vuelve inútil.
A
300
B
250
100
D
150
F
100
400
C
200
E
150
275
La resolución para este problema consiste en encontrar la distancia mínima de un origen a un destino
a través de un modelo red conexa que conecte a ambos, en caso de empate al aplicar el algoritmo,
estos se rompen en forma arbitraria.
Usualmente los arcos no están orientados, es decir, son ligaduras que permiten viajar en cualquier
dirección, aunque también están permitidos los arcos que sólo permiten viajar en una dirección.
Asociado con cada arco o ligadura hay un número no negativo llamado distancia costo o tiempo entre
dos puntos.
Aplicación el algoritmo para este problema podemos conocer la menor distancia entre el nodo origen
(A) y el nodo destino (F).
Se construye una tabla con la lista maestra tabulando en orden ascendente bajo cada nodo en la red
(A, B, C, D, E, F) según sea costo o distancia y las ramas que salen de este nodo. No es necesario incluir
las ramas que salen de ese nodo que llevan al origen o que salen del destino.
A
AB=250
AC=400
B
BC=100
BD=300
C
CB=100
CD=150
CE=275
D
DE=100
DC=150
DF=200
DB=300
217
E
ED=100
EF=150
EC=275
F
2. Optimización de Redes
Unidad 5
M.C. ADRIANA NIETO CASTELLANOS
Cada rama se identifica con un símbolo de dos letras, la primera es la letra del nodo del cual sale y la
segunda letra es la del nodo al que llega. Directamente junto al símbolo indicamos la longitud de las
ramas. En la tabla mostramos este tipo de lista para el problema de la ruta más corta del operario.
El proceso que usaremos se abre del origen (nodo A) que puede ser cualquier nodo elegido en forma
arbitraria y anulando todas las ramas que entren al nodo más cercano elegido y que puedan crear
ciclos identificando la ruta más corta a cada uno de los nodos en la red en orden ascendente de sus
distancias desde el origen. Empecemos por encontrar el nodo más cercano al origen.
1.- Solo dos ramas se alejan del origen; La rama AB es la más corta. Por consiguiente, el nodo B es el
nodo más cercano al origen indicamos arriba del nodo B que la distancia más corta es de 250
Kilómetros. Los resultados de este paso son:
250
B
AB
250
400
A
B
C
A
AC
C
2.- Los segundos nodos más cercanos al origen son aquellos más cercanos a A y B. Estos son C y D. D
esta a 300 Kilómetros de B y C esta 100 kilómetros de B. Entonces escogemos C que es la distancia
más corta del origen a C es de 350 kilómetros. Esto se muestra como:
3.-Los terceros nodos más cercanos al origen son aquellos más cercanos a B y C. Estos son D y E. Hay
250
B
250
300
D
100
A
400
C
350
dos formas de llegar a D, desde B y desde C. La distancia más corta a B es 250 + 300=550 mientras
que la distancia más corta a C es 350+150=500; escogemos la rama CD, nodo D es el más cercano a
B o C, e indicamos esto al escribir 500 millas arriba del nodo D de la siguiente manera:
250
250
A
B
100
300
D
150
275
400
C
500
E
350
218
3. Optimización de Redes
Unidad 5
M.C. ADRIANA NIETO CASTELLANOS
4.-Los cuartos nodos más cercanos al origen son aquellos más cercanos a C y D. Estos son E y F. Hay
dos formas de llegar a E desde C y D. La RMC a D es 500+100=600, mientras la RMC desde C es
350+275=625, escogemos la rama DE. Ahora vamos al nodo F. la RMC desde F es 500+200=700.
Concluimos que el nodo E es el más cercano a C y D e indicamos esto al escribir 600 debajo del
nodo E. Esto se representa como:
250
B
250
A
500
300
D
100
150
100
275
400
E
C
600
350
5.-Los quintos nodos más cercanos al origen son aquellos más cercanos a D y E y es solo un nodo F.
Comparamos las ramas DF= 500+200=700, mientras EF=600+150=750, entonces escogemos DF y
escribimos 700 arriba del nodo F e ilustremos la ruta más corta terminada así:
250
B
250
A
100
500
300
D
150
275
400
C
200
700
F
100
E
150
600
350
Vemos de esta la última red que la ruta más corta que la ruta más corta es A-B-C-D-F, con una
distancia total de 700 kilómetros.
250
250
A
500
B
100
D
200
700
F
150
C
350
Ejercicio de Aplicación.
Antonio conduce diariamente a su trabajo. Debido a que acaba de terminar un curso optimización de
redes, él quiere determinar la ruta más corta a su trabajo conduciendo a alta velocidad, sin embargo
la ruta seleccionada está patrullada por la policía y él ya tiene muchas multas pagadas por exceso de
velocidad, la ruta más corta no es la mejor elección. Por consiguiente, Antonio ha decidido elegir una
ruta que maximice la probabilidad de no ser detenido por la policía.
219
4. Optimización de Redes
Unidad 5
0.8
2
0.2
M.C. ADRIANA NIETO CASTELLANOS
0.6
1
0.35
4
6
0.5
7
0.4
0.1
0.9
0.25
3
5
0.3
La red en la figura muestra las posibles rutas entre su hogar y el trabajo y las probabilidades asociadas
de que no lo detengan en cada segmento. Por consiguiente, la probabilidad de que no lo detengan
camino al trabajo es el producto de las probabilidades asociadas con los segmentos sucesivos de la
ruta seleccionada. Por ejemplo, la probabilidad de que no lo multen en la ruta 1 3 5 7 es
0.9 * 0.3 * 0.25 = 0.0675. El objetivo de Antonio es seleccionar la ruta que maximice la probabilidad
de que no lo multen.
El problema se puede formular como un modelo de la ruta más corta, utilizando una transformación
logarítmica que convertirá el producto probabilidad en la suma de los logaritmos de probabilidades,
es decir, si p1k = p1 * p2 * ..... * pk es la probabilidad de que no lo detengan, entonces
log p1k = log p1 + log p2 + ….. + log p k
Matemáticamente la maximización de p 1k es equivalente a la maximización de log p 1k .
Debido a que log p1k < = 0, la maximización de log p 1k , a su vez, es equivalente a la minimización de
– log p 1k . Utilizando ésta transformación, las probabilidades individuales p la figura anterior se
reemplazan con –log p, para todas las j en la red, por tanto da la red de la ruta más corta en la figura
siguiente:
0.698
2
0.096
0.221
1
0.456
4
6
0.301
7
0.398
1
0.046
0.602
3
5
0.523
Utilizando un paquete de optimización encuentre la ruta más corta en la figura anterior, está definida
por los nodos 1, 3, 5 y 7, con una “longitud” correspondiente de 1.1707 (= - log p 17 ) . Por tanto, la
probabilidad máxima de que no lo detengan es p17 = 0.0675.
220