Está en la página 1de 11

Sesión Modelo del Vendedor

9 Viajero

I
OBJETIVOS
 Conocer y aplicar el concepto del algoritmo del agente viajero.
 Utilizar el Lindo, WinQsb o PomQm como herramientas de software para encontrar
una solución.
 Interactuar con los modelos.

II
TEMAS A TRATAR
 Algoritmo del Agente viajero.
 Modelamiento de problemas.

III
MARCO TEORICO

Modelo del Agente Viajero


Dada la siguiente Red:

Ing. Efraín Murillo


Modelo del Agente Viajero: Si la Red mostrada arriba representa alternativas de visita del
alcalde de Seatle a todas las demás ciudades, pasando por cada una de ellas por una sola vez y
los datos de los arcos representan distancias de recorrido en kilómetros ¿Cuál debería ser la
trayectoria de desplazamiento, suponiendo que se considera como alternativa de traslado el
tramo 2 a 6 ó 6 a 2 con 700 kms. de distancia? ¿Cuál es la distancia total recorrida?
Uso del WinWsb:
Utilizando la opción Network Modeling eligiendo el tipo de problema Problema del agente
viajero (Traveling Salesman Problem).

Ingresamos los datos de las distancias entre pares de nodos (la distancia de i a j es la misma que
de j a i), agregamos también la distancia de 700 kms. entre los nodos 2 y 6, y 6-2 pedimos la
solución del problema eligiendo el Método de Ramificación y Acotamiento (Branch and
Bound Method).

Ing. Efraín Murillo


Obtenemos la siguiente solución:

La trayectoria de desplazamiento es la mostrada en la gráfica siguiente:

La distancia total recorrida es 6024 Kms.

Ing. Efraín Murillo


Modelo Matemático para el problema del Agente Viajero
(RED SIMÉTRICA):
Para formular el modelo matemático, en vista de que todos los arcos tienen la misma distancia
del nodo i al nodo j que del nodo j al nodo i, podemos utilizar una sola variable por cada arco de
la red a efectos de simplificación:
Min 599x12+180x13+497x14+700x26+420x27+691x28+432x34+200x35+345x47+138x56+291x510+
526x67+440x78+432x711+621x712+102x89+452x912+280x1011+114x1013+155x1114+108x1115+
140x1116+469x1215+180x1219+120x1314+386x1316+118x1317+207x1415+403x1619+425x1718+
314x1819
St
x12+x13+x14=2
x12+ x26+x27+x28 =2
x13+x34+x35=2
x14+x34+x47=2
x35+x56+x510=2
x26+X56+x67=2
x27+x47+x67+x78=2
x28+x78+x89=2
x89+x912=2
x510+x1011+x1013=2
x711+x1011+x1114+x1115+x1116=2
x712+x912+x1215+x1219=2
x1013+x1314+x1316+x1317=2
x1114+x1314+x1415=2
x1115+x1215+x1415=2
x1116+x1316+x1619=2
x1317+x1718=2
x1718+x1819=2
x1219+x1619+x1819=2
End
Int 30
Donde Xij=1, si el arco ij es considerado en la trayectoria; =0, en caso contrario.
La solución utilizando el Lindo 6.0 es:

Esta solución nos da 2 trayectorias de desplazamiento:

Ing. Efraín Murillo


Por lo tanto no es la solución buscada, por lo que nos vemos obligados a romper uno de los
ciclos. Utilizaremos el ciclo (1,3,4), para el cual formulamos la siguiente restricción que
obligará romper dicho ciclo:
x13+x14+x34<=2
El valor 2 resulta de restar al número de arcos activos del ciclo (3) menos 1.
Agregamos esta restricción al modelo anterior y obtenemos la siguiente solución:

Esta solución finalmente es la misma que la obtenida con el WinQsb opción Network Modeling.

Modelo Matemático para el problema del Agente Viajero


(RED ASIMÉTRICA):

Min 599x12+180x13+497x14+700x26+420x27+691x28+432x34+200x35+345x47+138x56+291x510+
526x67+440x78+432x711+621x712+102x89+452x912+280x1011+114x1013+155x1114+108x1115+
140x1116+469x1215+180x1219+120x1314+386x1316+118x1317+207x1415+403x1619+425x1718+
314x1819+
599x21+180x31+497x41+420x72+691x82+432x43+200x53+345x74+700x62+138x65+291x105+
526x76+440x87+432x117+621x127+102x98+452x129+280x1110+114x1310+155x1411+108x1511+
140x1611+469x1512+180x1912+120x1413+386x1613+118x1713+207x1514+403x1916+425x1817+
314x1918
St

Ing. Efraín Murillo


! Restricciones de arcos que SALEN de cada nodo:
X12+x13+x14=1
X21+x26+x27+x28=1
X31+x34+x35=1
X41+x43+x47=1
X53+x56+x510=1
X62+X65+x67=1
X72+x74+x76+x78+x711+x712=1
X82+x87+x89=1
X98+x912=1
X105+x1011+x1013=1
X117+x1110+x1114+x1115+x1116=1
X127+x129+x1215+x1219=1
X1310+x1314+x1316+x1317=1
X1411+x1413+x1415=1
X1511+x1512+x1514=1
X1611+x1613+x1619=1
X1713+x1718=1
X1817+x1819=1
X1912+x1916+x1918=1
! Restricciones de arcos que INGRESAN a cada nodo:
X21+x31+x41=1
X12+x62+x72+x82=1
X13+x53+x43=1
X14+x34+x74=1
X35+x65+x105=1
X26+X56+x76=1
X27+x47+x67+x87+x117+x127=1
X28+x78+x98=1
X89+x129=1
X510+x1110+x1310=1
X711+x1011+x1411+x1511+x1611=1
X712+x912+x1512+x1912=1
X1013+x1413+x1613+x1713=1
X1114+x1314+x1514=1
X1115+x1215+x1415=1
X1116+x1316+x1916=1
X1317+x1817=1
X1718+x1918=1
X1219+x1619+x1819=1
End
Int 30

Salida del Lindo:

Ing. Efraín Murillo


La solución gráfica sería:

Observamos muchos ciclos pequeños entre dos nodos, dichos ciclos hay que romperlos agregando las
siguientes restricciones:

X27+x72<=1
X56+x65<=1
X89+x98<=1
X1013+x1310<=1
X1116+x1611<=1
X1415+x1514<=1
X1219+x1912<=1
X1718+x1817<=1

Ing. Efraín Murillo


También observamos el ciclo entre los nodos 1, 3 y 4 que lo obligaremos a romperse a fin de que
no vuelva a salir en soluciones posteriores:

X14+x43+X31 <=2

La solución gráfica es:

Observamos dos ciclos pequeños y los obligamos a romperse agragando al modelo las
siguientes restricciones:

X13+x31<=1
X47+x74<=1

Ing. Efraín Murillo


La solución gráficas es:

Observamos que el ciclo 1, 3 y 4 se repite frente a una de las soluciones anteriores, pero
en sentido contrario. Hay que obligarlo a romperse mediante la siguiente restricción:

X13+x34+x41<=2
Y finalmente obtenemos la solución del problema, una sola trayectoria y la distancia
total es 6024.

Ing. Efraín Murillo


IV
(La práctica tiene una duración de 02 horas) ACTIVIDADES

Caso 1.- Modelo del Agente Viajero: Determinación de Tours Turísticos


Una empresa internacional dedicada a ofrecer paquetes de tours turísticos para Latinoamérica, está
preocupada por determinar trayectorias que permitan visitar todas las capitales de los países
latinoamericanos sin pasar por una más de una vez. La información mostrada en la matriz es el costo de
transporte por vía aérea entre dos ciudades:

a) Si un grupo de turista se encuentran en Lima, utilizando el WinQsb con la opción Network


Modeling, determine la trayectoria de menor costo que permita visitar por una sola vez todas las
ciudades y terminar finalmente en la ciudad de Lima. (Nota: Asuma que los costos de transporte
de ida y vuelta entre dos ciudades son los mismos).
b) Construya el modelo matemático respectivo que permita determinar la trayectoria de menor
costo mencionada en la parte a) asumiendo que hay diferencias de costos de viaje de ida y
vuelta:
Entre 5 y 4 $500
Entre 9 y 5 $600
Entre 8 y 2 $750
Entre 10 y 5 $350
Entre 7 y 3 $600

Ing. Efraín Murillo


Caso 2.- Programe el recorrido del recolector de residuos sólidos para las manzanas C, D, E, F, H, I, M, N, O, P, R, S, T del cuadro siguiente:

Estime aproximadamente las distancias utilizando la escala de las manzanas P y B mostradas en la parte derecha del cuadro. Considere las que las flechas en rojo indican que
dichas calles son en un solo sentido.
Se pide:
a) El modelo matemático.
b) La trayectoria de forma gráfica.
c) La distancia total recorrida.

Ing. Efraín Murillo