SlideShare una empresa de Scribd logo
1 de 31
Descargar para leer sin conexión
Algoritmo del Agente viajero:
un recorrido sobre su historia, sus aplicaciones y
problemas relacionados.
Jesús Daniel Alarcón Chipana
21 Enero, 2013
FACULTAD DE: INGENIERÍA
ESCUELA ACADÉMICA PROFESIONAL
DE:
INGENIERÍA CIVIL
• Uno de los problemas de optimización más famosos.
• Un agente viajero requiere visitar n ciudades para vender sus
productos (travelling salesman problem-TSP)
• Empezando y terminando en su ciudad de origen visitar todas las n
ciudades una sola vez al “menor costo”
Problema del Agente Viajero
• En 1832 se menciona el problema en un manual del agentes viajeros
con ejemplos de tours por Alemania y Suiza, pero si un tratamiento
matemático.
• Problemas relacionados al TSP fueron estudiados por Sir William
Rowan Hamilton y Thomas Penyngton Kirkman.
Un camino hamiltoniano en una gráfica es una
sucesión de aristas adyacentes, que visita todos los
vértices de la gráfica una sola vez.
Si además el último vértice visitado es adyacente al
primero, el camino es un ciclo hamiltoniano.
Problema del Agente Viajero - Historia
De hecho Hamilton diseña un juego (1857) donde se desea encontrar
un ciclo hamiltoniano en las aristas de un grafo de un dodecaedro.
Problema delAgente Viajero - Historia
¿Cómo obtengo el tour más corto?
Problema del Agente Viajero
Ruta del agente viajero
(tour)
¿Cómo obtengo el tour más corto?
Problema del Agente Viajero
Ruta del agente viajero
(tour)
En 1932 Karl Menger “Das botenproblem” Ergebnisse eines
Mathematischen Kolloquiums 2 pp.11-12
•Menciona un problema que enfrentan los mensajeros postales y
otros viajeros de encontrar para un número finito de puntos el camino
más corto que los une.
•Diciendo que se puede resolver naturalmente evaluando las
permutaciones de los distintos puntos y que la regla de empezar en el
primer punto e ir al más cercano no garantiza el camino más corto
Para n ciudades tendríamos n! soluciones a evaluar,
(enumeración completa es impráctica para n grande)
10! ≈ 3,6∙103, 15 ! ≈ 1.3 ∙1012, 20! ≈ 2.4 ∙1018, 25! ≈ 15.5 ∙1024, 30! ≈ 2.6 ∙1032,
Problema del Agente Viajero - Historia
P.C. Mahalanobis (1940) discute algunos aspectos del problema, estaba
interesado a razón de un muestreo de tierras en granjas en Bengal
donde uno de los costos principales era transporte de equipo y personal
entre las distintas localizaciones del muestreo.
Para finales de los 40’s J.B. Robinson lo menciona “On the
Hamiltonian game (a traveling-salesman problem)” en RAND
Research Memorandum RM-303, parece ya era bien conocido en la
Coporación (que agrupó) a principios de los 50’s a una serie de
cientificos pioners en el área de investigación de operaciones
(Dantzing, Fulkerson, Ford, Bellman, Dijsktra).
En 1952, Datnzing Fulkerson y Johnson publican “Solution of a large-
scale traveling-salesman problem” Operations Research 2, pp. 393-
410, donde resuelven a optimalidad un problema con 49 ciudades
usando la primer formulación de programación lineal para el problema.
Problema del Agente Viajero - Historia
Programación Lineal
n
j 1, ,m.
aji xi  bj
i1
xi  0, i 1, ,n
Por décadas después de que Dantzing propusiera el algoritmo SIMPLEX para
resolver los problemas de programación lineal, que daba por lo general buenos
resultados, no se sabía si estos problemas eran P.
Hoy en día es tan popular esta manera modelar usando formulaciones de
programación lineal que hasta se encuentran solucionadores en EXCEL (Solver).
Sin embargo cuando xi, no está en los reales sino en los enteros el problema se
vuelve NP-duro.
Sujeto a
i i
i1
n
min c x
Un problema de programación lineal es un problema con n variables
reales xi, y m restricciones lineales donde se desea minimizar una
función lineal de las variables
Formulación de Programación Lineal Entera:
Problema del Agente Viajero

0

1 si se visita la ciudad j después de la i
e.o.c.
xij
cij el costo de (distancia) de visitar la ciudad i y luego la j
min cij xij
(i, j)
sujeto a
i j
n
xij 1
j1
desde alguna ciudad i se va a una sola ciudad
n
xij 1
i1
a la ciudad j se llega desde una sola ciudad
i
Formulación de Programación Lineal Entera:
Problema del Agente Viajero

0

1 si se visita la ciudad j después de la i
e.o.c.
xij
cij el costo de (distancia) de visitar la ciudad i y luego la j
min cij xij
(i, j)
sujeto a
i j
n
xij 1
j1
desde alguna ciudad i se va a una sola ciudad
n
xij 1
i1
a la ciudad j se llega desde una sola ciudad
i
¿Serán suficientes esas dos restricciones?
Problema del Agente Viajero
iG
n
j1
xij 1 j G
n
i1
xij 1
1
2
3
5
6
4
7
8
9
10
¿Serán suficientes esas dos restricciones?
Problema del Agente Viajero
iG
n
j1
xij 1 j G
n
i1
xij 1
3
4
5
6
7
8
9
10 1
2
3
4
5
6
7
8
1 10
2 9
¿Serán suficientes esas dos restricciones?
Problema del Agente Viajero
iG
n
j1
xij 1 j G
n
i1
xij 1
3
4
5
6
7
8
9
10 1
2
3
4
5
6
7
8
1 10
2 9
S {7,8,9,10}
xij  4
iS jS
¿Serán suficientes esas dos restricciones?
Problema del Agente Viajero
iG
n
j1
xij 1 j G
n
i1
xij 1
3
4
5
6
7
8
9
10 1
2
3
4
5
6
7
8
1 10
2 9
S {7,8,9,10}
xij  4
iS jS
S 1 41 3
¿Serán suficientes esas dos restricciones?
Problema del Agente Viajero
iG
n
j1
xij 1 j G
n
i1
xij 1
iS jS
xij  S 1 restricción de eliminación de sub-tours
S  2, ,n
3
4
5
6
7
8
9
10 1
2
3
4
5
6
7
8
1 10
2 9
S {7,8,9,10}
xij  4
iS jS
S 1 41 3
Problema del Agente Viajero
min cij xij
(i, j)
sujeto a
n
xij 1
j1
n
xij 1
i1
a la ciudad j se llega desde una sola ciudad
iS jS
xij  S 1 restricción de eliminación de sub-tours
S  2, ,n
1
2
3
4
5
6
7
8
9
10 1
2
4
5
6
7
8 3
9
10
Dantzing, Fulkerson, Johnson (1954)
desde alguna ciudad i se va a una sola ciudad
Problema del Agente Viajero
min cij xij
(i, j)
sujeto a
n
xij 1
j1
n
xij 1
i1
a la ciudad j se llega desde una sola ciudad
iS jS
xij  S 1 restricción de eliminación de sub-tours
S  2, ,n
1
2
3
4
5
6
7
8
9
10 1
2
4
5
6
7
8 3
9
10
Dantzing, Fulkerson, Johnson (1954)
2n restricciones !
desde alguna ciudad i se va a una sola ciudad
Problema del Agente Viajero
min cij xij
(i, j)
sujeto a
n
xij 1
j1
n
i1
xij 1 a la ciudad j se llega desde una sola ciudad
1
2
3
4
5
6
7
8
9
10 1
2
4
5
6
7
8 3
9
10
Miller, Tucker, Zemlin (1960)
desde alguna ciudad i se va a una sola ciudad
ui uj  n xij  n 1
ui ,u j , xij 0,1
restricción de eliminación de
sub-tours
n2 restricciones
G. Dantzig, R. Fulkerson, and S. Johnson, JORs, (4), pp. 393-410 (1954)
(tour óptimo de 42 ciudadesAmericanas)
1954
n=42
1962
n=33
1987 1998 2004 2009
n=532 n=13,509 n=24,978 n=100,000
Problema del Agente Viajero - Historia
1977
n=120
Concurso de Procter & Gamble
Para un problem con 33 ciudades
1954
n=42
1962
n=33
1987
n=532
1998
n=13,509
2004
n=24,978
2009
n=100,000
Problema del Agente Viajero - Historia
Martin Groetschel (1977) encuentra
el tour óptimo para 120 ciudades de
Alemania
Problema del Agente Viajero - Historia
1954
n=42
1962
n=33
1987 1998 2004 2009
n=532 n=13,509 n=24,978 n=100,000
1977
n=120
Padberg & Rinaldi, “Optimization of 532 symmetric traveling salesman
problem by Branch & Bound”, OR Letters(6), pp. 1-7 (1987)
(532 switchesA
T&T)
Problema del Agente Viajero - Historia
1954
n=42
1962
n=33
1987 1998 2004 2009
n=532 n=13,509 n=24,978 n=100,000
1977
n=120
Applegate, Bixby, Chvátal, and Cook (1998) tour óptimo para 13,509
ciudades de EEUU con población mayor a 500.
Problema del Agente Viajero - Historia
1954
n=42
1962
n=33
1987 1998 2004 2009
n=532 n=13,509 n=24,978 n=100,000
1977
n=120
http://www.tsp.gatech.edu/index.html
Applegate, Bixby, Chvátal, and Cook (2004) tour óptimo para 24,978
ciudades de Suecia
Problema del Agente Viajero - Historia
1954
n=42
1962
n=33
1987 1998 2004 2009
n=532 n=13,509 n=24,978 n=100,000
1977
n=120
Aplicaciones – programación producción
TesisAndrea Rosales (P&G)
Para la producción de jabón se tienen diferentes líneas de producción, donde el
jabón pasa por diferentes etapas.
Terminación de la producción de jabón:
• La viruta de jabón se le adiciona fragancia y se amalgama para pasar a refinarse
• Posteriormente se corta y se le da forma (proceso de troquelado)
• Para pasar a la envolvedora donde se empacan los jabones
Aplicaciones – programación producción
• En una misma semana se pueden realizar diferentes tipos de jabones (y ordenes)
• Entre cada orden se necesita:
• limpiar las máquinas (refinadora)
• ajustar las máquinas cambiar piezas (troquel, cortadora, etc.)
•Lo que lleva diferentes tiempo de cambio entre cada orden
No lleva el mismo tiempo hacer la orden
i antes de la j que la j antes de la i
Tenemos n ordenes por procesar en un
día. Desea minimizar el tiempo total de
producción
Idea es transformar el problema a uno
del agente viajero donde cada ciudad es
una orden a procesar y la distancia entre
ciudades el tiempo de cambio entre las
órdenes
Aplicaciones – programación producción
•Se implementaron diferentes heurísticas para mejorar el plan de producción y
resolver el TSP correspondiente se obtuvieron reducción en promedio de entre 15
y 25 horas al mes (ahorros considerables para la compañía).
•Se le proporcionó un paquete (EXCEL) que les ayuda en la planeación en una
implementación sencilla.
Aplicaciones- fabricación de circuitos
Donde cada ciudad representa un
puto de soldado y lo que se quiere es
minimizar la distancia recorrida por
la máquina soldadora para
manufacturar el circuito.
Aplicaciones- secuenciación genoma
R.Agarwala et al., (2000) “AFast and Scalable Radiation Hybrid Map
Construction and Integration Strategy” Genome Research 10, pp350-364 .
Aquí se desea construir mapas híbridos de radiación
como parte de la investigación en secuenciación de
genoma.
El TSP permite la integración de mapas locales para
integrar mapas completos. Las ciudades son los mapas
locales y la distancia entre ellos es una medida de la
similitud de que un mapa siga a otro .
Aplicaciones- investigación espacial
NASAStarlight space interferometer program
Bailey,A.C., McLain T.W. and Beard R.W. (2000) “Fuel saving strategies for
separated spacecraft interferometry” Proceedings of the AIAA Guidance,
Navigation and Control Conference . CiteSeerX 10.1.1.40.1906
Un grupo de investigadores en Hernadez Engineering en
Houston y la Universidad de Brigham Young, ha
estudiado la posibilidad de usar heurísticas que resuelven
el TSP para optimizar la secuencia en que se mapean los
objetos celestes y minimizar el uso de energía para mover
el par de satélites involucrados en la misión.
Aquí las ciudades son los objetos celestes a ser mapeados
y el costo de viajar de una ciudad a otra es la cantidad de
combustible necesario para reposicionar los satelites para
pasar de la toma de una imagen a la otra.

Más contenido relacionado

Similar a Algoritmo del viajero.

104889745-Agente-Viajero-analisis.doc
104889745-Agente-Viajero-analisis.doc104889745-Agente-Viajero-analisis.doc
104889745-Agente-Viajero-analisis.doc
arturoruizlopez1
 
Hoja De Trabajo Mate Iv Unidad 2
Hoja De Trabajo  Mate Iv  Unidad  2Hoja De Trabajo  Mate Iv  Unidad  2
Hoja De Trabajo Mate Iv Unidad 2
dianuchi
 
Ficha 2 funciones 3o - julioverne
Ficha 2  funciones 3o - julioverneFicha 2  funciones 3o - julioverne
Ficha 2 funciones 3o - julioverne
mgarmon965
 
Unmsm fisi - problema de transporte - io1 cl13 transporte
Unmsm   fisi - problema de transporte - io1 cl13 transporteUnmsm   fisi - problema de transporte - io1 cl13 transporte
Unmsm fisi - problema de transporte - io1 cl13 transporte
Julio Pari
 
Programación lineal
Programación linealProgramación lineal
Programación lineal
danile889_l
 

Similar a Algoritmo del viajero. (20)

Comercializadora licores
Comercializadora licoresComercializadora licores
Comercializadora licores
 
Programacion Lineal.Php
Programacion Lineal.PhpProgramacion Lineal.Php
Programacion Lineal.Php
 
10 semana sesion 19 problema de transporte
10 semana   sesion 19 problema de transporte10 semana   sesion 19 problema de transporte
10 semana sesion 19 problema de transporte
 
104889745-Agente-Viajero-analisis.doc
104889745-Agente-Viajero-analisis.doc104889745-Agente-Viajero-analisis.doc
104889745-Agente-Viajero-analisis.doc
 
repasofun (1)
repasofun (1)repasofun (1)
repasofun (1)
 
Funciones y modelos matemáticos
Funciones y modelos matemáticosFunciones y modelos matemáticos
Funciones y modelos matemáticos
 
Hoja De Trabajo Mate Iv Unidad 2
Hoja De Trabajo  Mate Iv  Unidad  2Hoja De Trabajo  Mate Iv  Unidad  2
Hoja De Trabajo Mate Iv Unidad 2
 
Modelo transporte
Modelo transporteModelo transporte
Modelo transporte
 
Funciones 3o julioverne
Funciones 3o   julioverneFunciones 3o   julioverne
Funciones 3o julioverne
 
Ficha 2 funciones 3o - julioverne
Ficha 2  funciones 3o - julioverneFicha 2  funciones 3o - julioverne
Ficha 2 funciones 3o - julioverne
 
Ejercicios resueltos-Produccion
Ejercicios resueltos-ProduccionEjercicios resueltos-Produccion
Ejercicios resueltos-Produccion
 
Aplicación de Ecuaciones Cuadráticas
Aplicación de Ecuaciones CuadráticasAplicación de Ecuaciones Cuadráticas
Aplicación de Ecuaciones Cuadráticas
 
Funcion cuadratica
Funcion cuadraticaFuncion cuadratica
Funcion cuadratica
 
Unmsm fisi - problema de transporte - io1 cl13 transporte
Unmsm   fisi - problema de transporte - io1 cl13 transporteUnmsm   fisi - problema de transporte - io1 cl13 transporte
Unmsm fisi - problema de transporte - io1 cl13 transporte
 
Programacion lineal
Programacion linealProgramacion lineal
Programacion lineal
 
V5 aplicaciones de programación lineal
V5 aplicaciones de programación linealV5 aplicaciones de programación lineal
V5 aplicaciones de programación lineal
 
Programación lineal
Programación linealProgramación lineal
Programación lineal
 
Trabajo, Modelos de Transporte y Optimización de Redes
Trabajo, Modelos de Transporte y Optimización de RedesTrabajo, Modelos de Transporte y Optimización de Redes
Trabajo, Modelos de Transporte y Optimización de Redes
 
Eu3 equiponro1
Eu3 equiponro1Eu3 equiponro1
Eu3 equiponro1
 
diseño de carretera y caminos ,identificacion de los puntos maximos y minima ...
diseño de carretera y caminos ,identificacion de los puntos maximos y minima ...diseño de carretera y caminos ,identificacion de los puntos maximos y minima ...
diseño de carretera y caminos ,identificacion de los puntos maximos y minima ...
 

Último

MODIFICADO - CAPITULO II DISEÑO SISMORRESISTENTE DE VIGAS Y COLUMNAS.pdf
MODIFICADO - CAPITULO II DISEÑO SISMORRESISTENTE DE VIGAS Y COLUMNAS.pdfMODIFICADO - CAPITULO II DISEÑO SISMORRESISTENTE DE VIGAS Y COLUMNAS.pdf
MODIFICADO - CAPITULO II DISEÑO SISMORRESISTENTE DE VIGAS Y COLUMNAS.pdf
vladimirpaucarmontes
 
NTP- Determinación de Cloruros en suelos y agregados (1) (1).pptx
NTP- Determinación de Cloruros  en suelos y agregados (1) (1).pptxNTP- Determinación de Cloruros  en suelos y agregados (1) (1).pptx
NTP- Determinación de Cloruros en suelos y agregados (1) (1).pptx
BRAYANJOSEPTSANJINEZ
 
clases de porcinos generales de porcinos
clases de porcinos generales de porcinosclases de porcinos generales de porcinos
clases de porcinos generales de porcinos
DayanaCarolinaAP
 

Último (20)

MODIFICADO - CAPITULO II DISEÑO SISMORRESISTENTE DE VIGAS Y COLUMNAS.pdf
MODIFICADO - CAPITULO II DISEÑO SISMORRESISTENTE DE VIGAS Y COLUMNAS.pdfMODIFICADO - CAPITULO II DISEÑO SISMORRESISTENTE DE VIGAS Y COLUMNAS.pdf
MODIFICADO - CAPITULO II DISEÑO SISMORRESISTENTE DE VIGAS Y COLUMNAS.pdf
 
TEXTO UNICO DE LA LEY-DE-CONTRATACIONES-ESTADO.pdf
TEXTO UNICO DE LA LEY-DE-CONTRATACIONES-ESTADO.pdfTEXTO UNICO DE LA LEY-DE-CONTRATACIONES-ESTADO.pdf
TEXTO UNICO DE LA LEY-DE-CONTRATACIONES-ESTADO.pdf
 
NTP- Determinación de Cloruros en suelos y agregados (1) (1).pptx
NTP- Determinación de Cloruros  en suelos y agregados (1) (1).pptxNTP- Determinación de Cloruros  en suelos y agregados (1) (1).pptx
NTP- Determinación de Cloruros en suelos y agregados (1) (1).pptx
 
desarrollodeproyectoss inge. industrial
desarrollodeproyectoss  inge. industrialdesarrollodeproyectoss  inge. industrial
desarrollodeproyectoss inge. industrial
 
Manual_Identificación_Geoformas_140627.pdf
Manual_Identificación_Geoformas_140627.pdfManual_Identificación_Geoformas_140627.pdf
Manual_Identificación_Geoformas_140627.pdf
 
Sesión 02 TIPOS DE VALORIZACIONES CURSO Cersa
Sesión 02 TIPOS DE VALORIZACIONES CURSO CersaSesión 02 TIPOS DE VALORIZACIONES CURSO Cersa
Sesión 02 TIPOS DE VALORIZACIONES CURSO Cersa
 
Tinciones simples en el laboratorio de microbiología
Tinciones simples en el laboratorio de microbiologíaTinciones simples en el laboratorio de microbiología
Tinciones simples en el laboratorio de microbiología
 
Falla de san andres y el gran cañon : enfoque integral
Falla de san andres y el gran cañon : enfoque integralFalla de san andres y el gran cañon : enfoque integral
Falla de san andres y el gran cañon : enfoque integral
 
CALCULO DE ENGRANAJES RECTOS SB-2024.pptx
CALCULO DE ENGRANAJES RECTOS SB-2024.pptxCALCULO DE ENGRANAJES RECTOS SB-2024.pptx
CALCULO DE ENGRANAJES RECTOS SB-2024.pptx
 
Ejemplos de cadenas de Markov - Ejercicios
Ejemplos de cadenas de Markov - EjerciciosEjemplos de cadenas de Markov - Ejercicios
Ejemplos de cadenas de Markov - Ejercicios
 
DOCUMENTO PLAN DE RESPUESTA A EMERGENCIAS MINERAS
DOCUMENTO PLAN DE RESPUESTA A EMERGENCIAS MINERASDOCUMENTO PLAN DE RESPUESTA A EMERGENCIAS MINERAS
DOCUMENTO PLAN DE RESPUESTA A EMERGENCIAS MINERAS
 
osciloscopios Mediciones Electricas ingenieria.pdf
osciloscopios Mediciones Electricas ingenieria.pdfosciloscopios Mediciones Electricas ingenieria.pdf
osciloscopios Mediciones Electricas ingenieria.pdf
 
INTEGRALES TRIPLES CLASE TEORICA Y PRÁCTICA
INTEGRALES TRIPLES CLASE TEORICA Y PRÁCTICAINTEGRALES TRIPLES CLASE TEORICA Y PRÁCTICA
INTEGRALES TRIPLES CLASE TEORICA Y PRÁCTICA
 
ECONOMIA APLICADA SEMANA 555555555544.pdf
ECONOMIA APLICADA SEMANA 555555555544.pdfECONOMIA APLICADA SEMANA 555555555544.pdf
ECONOMIA APLICADA SEMANA 555555555544.pdf
 
clases de porcinos generales de porcinos
clases de porcinos generales de porcinosclases de porcinos generales de porcinos
clases de porcinos generales de porcinos
 
CARGAS VIVAS Y CARGAS MUERTASEXPOCI.pptx
CARGAS VIVAS Y CARGAS MUERTASEXPOCI.pptxCARGAS VIVAS Y CARGAS MUERTASEXPOCI.pptx
CARGAS VIVAS Y CARGAS MUERTASEXPOCI.pptx
 
nomenclatura de equipo electrico en subestaciones
nomenclatura de equipo electrico en subestacionesnomenclatura de equipo electrico en subestaciones
nomenclatura de equipo electrico en subestaciones
 
ARBOL DE CAUSAS ANA INVESTIGACION DE ACC.ppt
ARBOL DE CAUSAS ANA INVESTIGACION DE ACC.pptARBOL DE CAUSAS ANA INVESTIGACION DE ACC.ppt
ARBOL DE CAUSAS ANA INVESTIGACION DE ACC.ppt
 
hitos del desarrollo psicomotor en niños.docx
hitos del desarrollo psicomotor en niños.docxhitos del desarrollo psicomotor en niños.docx
hitos del desarrollo psicomotor en niños.docx
 
Mapas y cartas topográficas y de suelos.pptx
Mapas y cartas topográficas y de suelos.pptxMapas y cartas topográficas y de suelos.pptx
Mapas y cartas topográficas y de suelos.pptx
 

Algoritmo del viajero.

  • 1. Algoritmo del Agente viajero: un recorrido sobre su historia, sus aplicaciones y problemas relacionados. Jesús Daniel Alarcón Chipana 21 Enero, 2013 FACULTAD DE: INGENIERÍA ESCUELA ACADÉMICA PROFESIONAL DE: INGENIERÍA CIVIL
  • 2. • Uno de los problemas de optimización más famosos. • Un agente viajero requiere visitar n ciudades para vender sus productos (travelling salesman problem-TSP) • Empezando y terminando en su ciudad de origen visitar todas las n ciudades una sola vez al “menor costo” Problema del Agente Viajero
  • 3. • En 1832 se menciona el problema en un manual del agentes viajeros con ejemplos de tours por Alemania y Suiza, pero si un tratamiento matemático. • Problemas relacionados al TSP fueron estudiados por Sir William Rowan Hamilton y Thomas Penyngton Kirkman. Un camino hamiltoniano en una gráfica es una sucesión de aristas adyacentes, que visita todos los vértices de la gráfica una sola vez. Si además el último vértice visitado es adyacente al primero, el camino es un ciclo hamiltoniano. Problema del Agente Viajero - Historia
  • 4. De hecho Hamilton diseña un juego (1857) donde se desea encontrar un ciclo hamiltoniano en las aristas de un grafo de un dodecaedro. Problema delAgente Viajero - Historia
  • 5. ¿Cómo obtengo el tour más corto? Problema del Agente Viajero Ruta del agente viajero (tour)
  • 6. ¿Cómo obtengo el tour más corto? Problema del Agente Viajero Ruta del agente viajero (tour)
  • 7. En 1932 Karl Menger “Das botenproblem” Ergebnisse eines Mathematischen Kolloquiums 2 pp.11-12 •Menciona un problema que enfrentan los mensajeros postales y otros viajeros de encontrar para un número finito de puntos el camino más corto que los une. •Diciendo que se puede resolver naturalmente evaluando las permutaciones de los distintos puntos y que la regla de empezar en el primer punto e ir al más cercano no garantiza el camino más corto Para n ciudades tendríamos n! soluciones a evaluar, (enumeración completa es impráctica para n grande) 10! ≈ 3,6∙103, 15 ! ≈ 1.3 ∙1012, 20! ≈ 2.4 ∙1018, 25! ≈ 15.5 ∙1024, 30! ≈ 2.6 ∙1032, Problema del Agente Viajero - Historia
  • 8. P.C. Mahalanobis (1940) discute algunos aspectos del problema, estaba interesado a razón de un muestreo de tierras en granjas en Bengal donde uno de los costos principales era transporte de equipo y personal entre las distintas localizaciones del muestreo. Para finales de los 40’s J.B. Robinson lo menciona “On the Hamiltonian game (a traveling-salesman problem)” en RAND Research Memorandum RM-303, parece ya era bien conocido en la Coporación (que agrupó) a principios de los 50’s a una serie de cientificos pioners en el área de investigación de operaciones (Dantzing, Fulkerson, Ford, Bellman, Dijsktra). En 1952, Datnzing Fulkerson y Johnson publican “Solution of a large- scale traveling-salesman problem” Operations Research 2, pp. 393- 410, donde resuelven a optimalidad un problema con 49 ciudades usando la primer formulación de programación lineal para el problema. Problema del Agente Viajero - Historia
  • 9. Programación Lineal n j 1, ,m. aji xi  bj i1 xi  0, i 1, ,n Por décadas después de que Dantzing propusiera el algoritmo SIMPLEX para resolver los problemas de programación lineal, que daba por lo general buenos resultados, no se sabía si estos problemas eran P. Hoy en día es tan popular esta manera modelar usando formulaciones de programación lineal que hasta se encuentran solucionadores en EXCEL (Solver). Sin embargo cuando xi, no está en los reales sino en los enteros el problema se vuelve NP-duro. Sujeto a i i i1 n min c x Un problema de programación lineal es un problema con n variables reales xi, y m restricciones lineales donde se desea minimizar una función lineal de las variables
  • 10. Formulación de Programación Lineal Entera: Problema del Agente Viajero  0  1 si se visita la ciudad j después de la i e.o.c. xij cij el costo de (distancia) de visitar la ciudad i y luego la j min cij xij (i, j) sujeto a i j n xij 1 j1 desde alguna ciudad i se va a una sola ciudad n xij 1 i1 a la ciudad j se llega desde una sola ciudad i
  • 11. Formulación de Programación Lineal Entera: Problema del Agente Viajero  0  1 si se visita la ciudad j después de la i e.o.c. xij cij el costo de (distancia) de visitar la ciudad i y luego la j min cij xij (i, j) sujeto a i j n xij 1 j1 desde alguna ciudad i se va a una sola ciudad n xij 1 i1 a la ciudad j se llega desde una sola ciudad i
  • 12. ¿Serán suficientes esas dos restricciones? Problema del Agente Viajero iG n j1 xij 1 j G n i1 xij 1 1 2 3 5 6 4 7 8 9 10
  • 13. ¿Serán suficientes esas dos restricciones? Problema del Agente Viajero iG n j1 xij 1 j G n i1 xij 1 3 4 5 6 7 8 9 10 1 2 3 4 5 6 7 8 1 10 2 9
  • 14. ¿Serán suficientes esas dos restricciones? Problema del Agente Viajero iG n j1 xij 1 j G n i1 xij 1 3 4 5 6 7 8 9 10 1 2 3 4 5 6 7 8 1 10 2 9 S {7,8,9,10} xij  4 iS jS
  • 15. ¿Serán suficientes esas dos restricciones? Problema del Agente Viajero iG n j1 xij 1 j G n i1 xij 1 3 4 5 6 7 8 9 10 1 2 3 4 5 6 7 8 1 10 2 9 S {7,8,9,10} xij  4 iS jS S 1 41 3
  • 16. ¿Serán suficientes esas dos restricciones? Problema del Agente Viajero iG n j1 xij 1 j G n i1 xij 1 iS jS xij  S 1 restricción de eliminación de sub-tours S  2, ,n 3 4 5 6 7 8 9 10 1 2 3 4 5 6 7 8 1 10 2 9 S {7,8,9,10} xij  4 iS jS S 1 41 3
  • 17. Problema del Agente Viajero min cij xij (i, j) sujeto a n xij 1 j1 n xij 1 i1 a la ciudad j se llega desde una sola ciudad iS jS xij  S 1 restricción de eliminación de sub-tours S  2, ,n 1 2 3 4 5 6 7 8 9 10 1 2 4 5 6 7 8 3 9 10 Dantzing, Fulkerson, Johnson (1954) desde alguna ciudad i se va a una sola ciudad
  • 18. Problema del Agente Viajero min cij xij (i, j) sujeto a n xij 1 j1 n xij 1 i1 a la ciudad j se llega desde una sola ciudad iS jS xij  S 1 restricción de eliminación de sub-tours S  2, ,n 1 2 3 4 5 6 7 8 9 10 1 2 4 5 6 7 8 3 9 10 Dantzing, Fulkerson, Johnson (1954) 2n restricciones ! desde alguna ciudad i se va a una sola ciudad
  • 19. Problema del Agente Viajero min cij xij (i, j) sujeto a n xij 1 j1 n i1 xij 1 a la ciudad j se llega desde una sola ciudad 1 2 3 4 5 6 7 8 9 10 1 2 4 5 6 7 8 3 9 10 Miller, Tucker, Zemlin (1960) desde alguna ciudad i se va a una sola ciudad ui uj  n xij  n 1 ui ,u j , xij 0,1 restricción de eliminación de sub-tours n2 restricciones
  • 20. G. Dantzig, R. Fulkerson, and S. Johnson, JORs, (4), pp. 393-410 (1954) (tour óptimo de 42 ciudadesAmericanas) 1954 n=42 1962 n=33 1987 1998 2004 2009 n=532 n=13,509 n=24,978 n=100,000 Problema del Agente Viajero - Historia 1977 n=120
  • 21. Concurso de Procter & Gamble Para un problem con 33 ciudades 1954 n=42 1962 n=33 1987 n=532 1998 n=13,509 2004 n=24,978 2009 n=100,000 Problema del Agente Viajero - Historia
  • 22. Martin Groetschel (1977) encuentra el tour óptimo para 120 ciudades de Alemania Problema del Agente Viajero - Historia 1954 n=42 1962 n=33 1987 1998 2004 2009 n=532 n=13,509 n=24,978 n=100,000 1977 n=120
  • 23. Padberg & Rinaldi, “Optimization of 532 symmetric traveling salesman problem by Branch & Bound”, OR Letters(6), pp. 1-7 (1987) (532 switchesA T&T) Problema del Agente Viajero - Historia 1954 n=42 1962 n=33 1987 1998 2004 2009 n=532 n=13,509 n=24,978 n=100,000 1977 n=120
  • 24. Applegate, Bixby, Chvátal, and Cook (1998) tour óptimo para 13,509 ciudades de EEUU con población mayor a 500. Problema del Agente Viajero - Historia 1954 n=42 1962 n=33 1987 1998 2004 2009 n=532 n=13,509 n=24,978 n=100,000 1977 n=120 http://www.tsp.gatech.edu/index.html
  • 25. Applegate, Bixby, Chvátal, and Cook (2004) tour óptimo para 24,978 ciudades de Suecia Problema del Agente Viajero - Historia 1954 n=42 1962 n=33 1987 1998 2004 2009 n=532 n=13,509 n=24,978 n=100,000 1977 n=120
  • 26. Aplicaciones – programación producción TesisAndrea Rosales (P&G) Para la producción de jabón se tienen diferentes líneas de producción, donde el jabón pasa por diferentes etapas. Terminación de la producción de jabón: • La viruta de jabón se le adiciona fragancia y se amalgama para pasar a refinarse • Posteriormente se corta y se le da forma (proceso de troquelado) • Para pasar a la envolvedora donde se empacan los jabones
  • 27. Aplicaciones – programación producción • En una misma semana se pueden realizar diferentes tipos de jabones (y ordenes) • Entre cada orden se necesita: • limpiar las máquinas (refinadora) • ajustar las máquinas cambiar piezas (troquel, cortadora, etc.) •Lo que lleva diferentes tiempo de cambio entre cada orden No lleva el mismo tiempo hacer la orden i antes de la j que la j antes de la i Tenemos n ordenes por procesar en un día. Desea minimizar el tiempo total de producción Idea es transformar el problema a uno del agente viajero donde cada ciudad es una orden a procesar y la distancia entre ciudades el tiempo de cambio entre las órdenes
  • 28. Aplicaciones – programación producción •Se implementaron diferentes heurísticas para mejorar el plan de producción y resolver el TSP correspondiente se obtuvieron reducción en promedio de entre 15 y 25 horas al mes (ahorros considerables para la compañía). •Se le proporcionó un paquete (EXCEL) que les ayuda en la planeación en una implementación sencilla.
  • 29. Aplicaciones- fabricación de circuitos Donde cada ciudad representa un puto de soldado y lo que se quiere es minimizar la distancia recorrida por la máquina soldadora para manufacturar el circuito.
  • 30. Aplicaciones- secuenciación genoma R.Agarwala et al., (2000) “AFast and Scalable Radiation Hybrid Map Construction and Integration Strategy” Genome Research 10, pp350-364 . Aquí se desea construir mapas híbridos de radiación como parte de la investigación en secuenciación de genoma. El TSP permite la integración de mapas locales para integrar mapas completos. Las ciudades son los mapas locales y la distancia entre ellos es una medida de la similitud de que un mapa siga a otro .
  • 31. Aplicaciones- investigación espacial NASAStarlight space interferometer program Bailey,A.C., McLain T.W. and Beard R.W. (2000) “Fuel saving strategies for separated spacecraft interferometry” Proceedings of the AIAA Guidance, Navigation and Control Conference . CiteSeerX 10.1.1.40.1906 Un grupo de investigadores en Hernadez Engineering en Houston y la Universidad de Brigham Young, ha estudiado la posibilidad de usar heurísticas que resuelven el TSP para optimizar la secuencia en que se mapean los objetos celestes y minimizar el uso de energía para mover el par de satélites involucrados en la misión. Aquí las ciudades son los objetos celestes a ser mapeados y el costo de viajar de una ciudad a otra es la cantidad de combustible necesario para reposicionar los satelites para pasar de la toma de una imagen a la otra.