

En la teoría de la complejidad computacional , el problema del viajante ( TSP ) plantea la siguiente pregunta: "Dada una lista de ciudades y las distancias entre cada par de ciudades, ¿cuál es la ruta más corta posible que visita cada ciudad exactamente una vez y regresa a la ciudad de origen?". Es un problema NP-difícil en optimización combinatoria , importante en la informática teórica y la investigación operativa .
El problema del comprador viajero , el problema de enrutamiento de vehículos y el problema de la estrella de anillo [ 1 ] son tres generalizaciones del TSP.
La versión de decisión del TSP (donde, dada una longitud L , la tarea consiste en decidir si el grafo tiene un recorrido cuya longitud sea como máximo L ) pertenece a la clase de problemas NP-completos . Por lo tanto, es posible que el tiempo de ejecución en el peor de los casos para cualquier algoritmo del TSP aumente de forma superpolinómica (pero no más que exponencial ) con el número de ciudades.
El problema se formuló por primera vez en 1930 y es uno de los problemas más estudiados en optimización. Se utiliza como referencia para muchos métodos de optimización. Aunque el problema es computacionalmente difícil, se conocen muchas heurísticas y algoritmos exactos , de modo que algunas instancias con decenas de miles de ciudades pueden resolverse completamente, e incluso problemas con millones de ciudades pueden aproximarse con una precisión de una pequeña fracción del 1 %. [ 2 ]
El problema del viajante (TSP) tiene diversas aplicaciones incluso en su formulación más pura, como la planificación , la logística y la fabricación de microchips . En las operaciones de almacén, las rutas de preparación de pedidos suelen modelarse como variantes del problema del viajante, donde un operario debe visitar múltiples ubicaciones de almacenamiento y regresar a un punto de inicio o de entrega, minimizando la distancia o el tiempo de viaje.
Con ligeras modificaciones, aparece como un subproblema en diversas áreas, como la secuenciación de ADN . En estas aplicaciones, el concepto de ciudad representa, por ejemplo, clientes, puntos de soldadura o fragmentos de ADN, y el concepto de distancia representa tiempos de viaje, costes o una medida de similitud entre fragmentos de ADN. El problema del viajante también se utiliza en astronomía , ya que los astrónomos que observan múltiples fuentes buscan minimizar el tiempo de desplazamiento del telescopio entre ellas; en estos problemas, el problema del viajante puede integrarse en un problema de control óptimo . En muchas aplicaciones, pueden imponerse restricciones adicionales, como recursos limitados o ventanas de tiempo.
Historia
Los orígenes del problema del viajante no están claros. Un manual para viajeros de 1832 menciona el problema e incluye ejemplos de viajes por Alemania y Suiza , pero no contiene ningún tratamiento matemático. [ 3 ]

El TSP fue formulado matemáticamente en el siglo XIX por el matemático irlandés William Rowan Hamilton y por el matemático británico Thomas Kirkman . El juego icosiano de Hamilton era un rompecabezas recreativo basado en encontrar un ciclo hamiltoniano . [ 4 ] La forma general del TSP parece haber sido estudiada por primera vez por matemáticos durante la década de 1930 en Viena y en Harvard , en particular por Karl Menger , quien define el problema, considera el algoritmo obvio de fuerza bruta y observa la no optimalidad de la heurística del vecino más cercano :
Denominamos problema del mensajero (ya que en la práctica esta cuestión debería ser resuelta por cada cartero, y también por muchos viajeros) la tarea de encontrar, para un número finito de puntos cuyas distancias entre pares se conocen, la ruta más corta que los conecte. Por supuesto, este problema se puede resolver con un número finito de ensayos. No se conocen reglas que reduzcan el número de ensayos por debajo del número de permutaciones de los puntos dados. La regla de que primero se debe ir del punto de partida al punto más cercano, luego al punto más cercano a este, etc., generalmente no produce la ruta más corta. [ 5 ]
Fue considerado matemáticamente por primera vez en la década de 1930 por Merrill M. Flood , quien buscaba resolver un problema de enrutamiento de autobuses escolares. [ 6 ] Hassler Whitney, de la Universidad de Princeton, generó interés en el problema, al que llamó el "problema de los 48 estados". La primera publicación que utilizó la frase "problema del viajante" fue el informe de 1949 de la Corporación RAND , de Julia Robinson , "Sobre el juego hamiltoniano (un problema del viajante)". [ 7 ] [ 8 ]
En las décadas de 1950 y 1960, el problema se popularizó en los círculos científicos de Europa y Estados Unidos después de que la Corporación RAND en Santa Mónica ofreciera premios por avances en su solución. [ 6 ] George Dantzig , Delbert Ray Fulkerson y Selmer M. Johnson , de la Corporación RAND, realizaron contribuciones notables al expresar el problema como un programa lineal entero y desarrollar el método del plano de corte para su solución. Escribieron el artículo considerado fundamental sobre el tema, en el que, con estos nuevos métodos, resolvieron un caso con 49 ciudades de forma óptima mediante la construcción de un recorrido y demostrando que ningún otro recorrido podía ser más corto. Sin embargo, Dantzig, Fulkerson y Johnson especularon que, dada una solución casi óptima, se podría encontrar la optimalidad o demostrarla añadiendo un pequeño número de desigualdades adicionales (cortes). Utilizaron esta idea para resolver su problema inicial de 49 ciudades mediante un modelo de cadena. Descubrieron que solo necesitaban 26 cortes para llegar a una solución para su problema de 49 ciudades. Si bien este artículo no proporcionó un enfoque algorítmico para los problemas del viajante, las ideas que contenía fueron indispensables para la posterior creación de métodos de solución exactos para el viajante, aunque se tardarían 15 años en encontrar un enfoque algorítmico para crear estos cortes. [ 6 ] Además de los métodos de planos de corte, Dantzig, Fulkerson y Johnson utilizaron algoritmos de ramificación y acotación, quizás por primera vez. [ 6 ]
En 1959, Jillian Beardwood , J.H. Halton y John Hammersley publicaron un artículo titulado "El camino más corto a través de muchos puntos" en la revista de la Sociedad Filosófica de Cambridge . [ 9 ] El teorema de Beardwood-Halton-Hammersley proporciona una solución práctica al problema del viajante. Los autores derivaron una fórmula asintótica para determinar la longitud de la ruta más corta para un vendedor que parte de su casa u oficina y visita un número fijo de lugares antes de regresar al punto de partida.
En las décadas siguientes, el problema fue estudiado por numerosos investigadores de matemáticas , informática , química , física y otras ciencias. Sin embargo, en la década de 1960 se creó un nuevo enfoque que, en lugar de buscar soluciones óptimas, produciría una solución cuya longitud está demostrablemente acotada por un múltiplo de la longitud óptima, y al hacerlo se crearían cotas inferiores para el problema; estas cotas inferiores se utilizarían posteriormente con métodos de ramificación y acotación. Un método para lograr esto consistía en crear un árbol de expansión mínima del grafo y luego duplicar todas sus aristas, lo que produce la cota de que la longitud de un recorrido óptimo es como máximo el doble del peso de un árbol de expansión mínima. [ 6 ]
En 1976, Christofides y Serdyukov (de forma independiente) hicieron un gran avance en esta dirección: [ 10 ] el algoritmo de Christofides-Serdyukov produce una solución que, en el peor de los casos, es como máximo 1,5 veces más larga que la solución óptima. Como el algoritmo era simple y rápido, muchos esperaban que diera paso a un método de solución casi óptimo. Sin embargo, esta esperanza de mejora no se materializó de inmediato, y el algoritmo de Christofides-Serdyukov siguió siendo el método con el mejor escenario en el peor de los casos hasta 2011, cuando se desarrolló un algoritmo de aproximación (muy) ligeramente mejorado para el subconjunto de TSP "gráficos". [ 11 ] En 2020, esta pequeña mejora se extendió al TSP completo (métrico). [ 12 ] [ 13 ]
En 1972, Richard M. Karp demostró que el problema del ciclo hamiltoniano era NP-completo , lo que implica la NP-dificultad del problema del viajante. Esto proporcionó una explicación matemática a la aparente dificultad computacional de encontrar recorridos óptimos.
Se lograron grandes avances a finales de los años 70 y en 1980, cuando Grötschel , Padberg , Rinaldi y otros consiguieron resolver con exactitud casos con hasta 2392 ciudades, utilizando planos de corte y el método de ramificación y acotación .
En la década de 1990, Applegate , Bixby , Chvátal y Cook desarrollaron el programa Concorde , que se ha utilizado en muchas soluciones récord recientes. Gerhard Reinelt publicó el TSPLIB en 1991, una colección de instancias de referencia de dificultad variable, que ha sido utilizada por muchos grupos de investigación para comparar resultados. En 2006, Cook y otros calcularon un recorrido óptimo a través de una instancia de 85 900 ciudades dada por un problema de diseño de microchips, actualmente la instancia TSPLIB resuelta más grande. Para muchas otras instancias con millones de ciudades, se pueden encontrar soluciones que garantizan estar dentro del 2-3% de un recorrido óptimo. [ 14 ]
Descripción
Como un problema de grafos

El problema del viajante (TSP) puede modelarse como un grafo ponderado no dirigido , donde las ciudades son los vértices , los caminos son las aristas y la distancia de un camino es el peso de la arista. Se trata de un problema de minimización que comienza y termina en un vértice específico después de haber visitado cada uno de los demás vértices exactamente una vez. A menudo, el modelo es un grafo completo (es decir, cada par de vértices está conectado por una arista). Si no existe un camino entre dos ciudades, añadir una arista suficientemente larga completará el grafo sin afectar el recorrido óptimo.
Asimétrico y simétrico
En el problema del viajante simétrico (TSP simétrico) , la distancia entre dos ciudades es la misma en ambas direcciones opuestas, formando un grafo no dirigido . Esta simetría reduce a la mitad el número de soluciones posibles. En el problema del viajante asimétrico (TSP asimétrico) , puede que no existan caminos en ambas direcciones o que las distancias sean diferentes, formando un grafo dirigido . La congestión del tráfico, las calles de sentido único y las tarifas aéreas para ciudades con diferentes precios de salida y llegada son consideraciones del mundo real que podrían dar lugar a un problema del viajante en forma asimétrica.
Problemas relacionados
- Una formulación equivalente en términos de teoría de grafos es: dado un grafo completo ponderado (donde los vértices representan las ciudades, las aristas las carreteras y los pesos el costo o la distancia de cada carretera), encontrar un ciclo hamiltoniano con el menor peso. Esto es más general que el problema del camino hamiltoniano , que solo pregunta si existe un camino (o ciclo) hamiltoniano en un grafo no completo y sin ponderar.
- El requisito de regresar a la ciudad de partida no cambia la complejidad computacional del problema; véase el problema del camino hamiltoniano .
- Otro problema relacionado es el problema del viajante de comercio con cuello de botella : encontrar un ciclo hamiltoniano en un grafo ponderado con el peso mínimo de la arista más pesada . Un ejemplo del mundo real es evitar calles estrechas con autobuses grandes. [ 15 ] El problema tiene una importancia práctica considerable, aparte de las evidentes áreas de transporte y logística. Un ejemplo clásico es en la fabricación de circuitos impresos : la programación de una ruta de la máquina perforadora para taladrar agujeros en una PCB. En las aplicaciones de mecanizado o perforación robótica, las "ciudades" son piezas a mecanizar o agujeros (de diferentes tamaños) a taladrar, y el "costo del viaje" incluye el tiempo para reequipar el robot (problema de secuenciación de trabajos de una sola máquina). [ 16 ]
- El problema generalizado del viajante , también conocido como el "problema del político viajero", trata sobre "estados" que tienen (una o más) "ciudades", y el vendedor debe visitar exactamente una ciudad de cada estado. Una aplicación se encuentra en la ordenación de una solución al problema de corte de materiales para minimizar los cambios de cuchillas. Otra se relaciona con la perforación en la fabricación de semiconductores ; véase, por ejemplo, la patente estadounidense 7,054,798 . Noon y Bean demostraron que el problema generalizado del viajante puede transformarse en un problema estándar del viajante con el mismo número de ciudades, pero con una matriz de distancias modificada .
- El problema del ordenamiento secuencial aborda el problema de visitar un conjunto de ciudades, donde existen relaciones de precedencia entre ellas.
- Una pregunta común en las entrevistas de trabajo en Google es cómo enrutar los datos entre los nodos de procesamiento de datos; las rutas varían en cuanto al tiempo de transferencia de datos, pero los nodos también difieren en su capacidad de procesamiento y almacenamiento, lo que complica aún más el problema de dónde enviar los datos.
- El problema del comprador viajero plantea la cuestión de un comprador que debe adquirir un conjunto de productos. Puede adquirirlos en varias ciudades, pero a precios diferentes, y no todas las ciudades ofrecen los mismos productos. El objetivo es encontrar una ruta entre un subconjunto de ciudades que minimice el coste total (coste de viaje + coste de compra) y le permita adquirir todos los productos necesarios.
Formulaciones de programación lineal entera
El TSP puede formularse como un programa lineal entero . [ 17 ] [ 18 ] [ 19 ] Se conocen varias formulaciones. Dos formulaciones destacadas son la formulación de Miller-Tucker-Zemlin (MTZ) y la formulación de Dantzig-Fulkerson-Johnson (DFJ). La formulación DFJ es más robusta, aunque la formulación MTZ sigue siendo útil en ciertos contextos. [ 20 ] [ 21 ]
Lo común a ambas formulaciones es que se etiquetan las ciudades con los números.y tomaser el costo (distancia) desde la ciudada la ciudadLas principales variables en las formulaciones son:
Es debido a que estas son variables binarias (0/1) que las formulaciones se convierten en programas enteros; todas las demás restricciones son puramente lineales. En particular, el objetivo del programa es minimizar la longitud del recorrido.
Sin restricciones adicionales, elefectivamente abarcará todos los subconjuntos del conjunto de aristas, que está muy lejos de los conjuntos de aristas en un recorrido, y permite un mínimo trivial donde todosPor lo tanto, ambas formulaciones también tienen la restricción de que, en cada vértice, hay exactamente una arista entrante y una arista saliente, lo que puede expresarse como laecuaciones lineales
- paraypara
Estas soluciones garantizan que el conjunto de aristas elegido se asemeje localmente a un recorrido, pero permiten soluciones que no cumplen con el requisito global de que exista un único recorrido que visite todos los vértices, ya que las aristas elegidas podrían conformar varios recorridos, cada uno de los cuales visita solo un subconjunto de los vértices. Podría decirse que este requisito global es lo que convierte al problema del viajante en un problema difícil. Las formulaciones MTZ y DFJ difieren en la forma en que expresan este último requisito como restricciones lineales.
Formulación de Miller-Tucker-Zemlin
Además de lavariables como arriba, hay para cadauna variable ficticiaque registra el orden en que se visitan las ciudades, contando desde la ciudad; la interpretación es queimplica ciudades visitada antes de la ciudadPara un recorrido determinado (como se codifica en valores de lavariables), se pueden encontrar valores satisfactorios para lavariables haciendoigual al número de aristas a lo largo de ese recorrido, cuando se va de ciudad a ciudada la ciudad[ 22 ]
Debido a que la programación lineal favorece las desigualdades no estrictas () sobre estricto (), nos gustaría imponer restricciones en el sentido de que
- si
Simplemente requiereno lograría eso, porque esto también requierecuandolo cual no es correcto. En su lugar, MTZ utiliza elrestricciones lineales
- para todos los distintos
donde el término constanteproporciona suficiente holgura queno impone una relación entrey
La forma en que elLas variables imponen que un solo recorrido visite todas las ciudades, es decir, que aumenten al menospor cada paso a lo largo de un recorrido, con una disminución permitida solo donde el recorrido pasa por la ciudad Esa restricción sería violada por cualquier recorrido que no pase por la ciudad. por lo que la única manera de satisfacerlo es que el tour pase por la ciudad También pasa por todas las demás ciudades.
La formulación MTZ del problema del viajante es, por lo tanto, el siguiente problema de programación lineal entera:
El primer conjunto de igualdades exige que a cada ciudad se llegue desde exactamente otra ciudad, y el segundo conjunto de igualdades exige que desde cada ciudad haya una salida hacia exactamente otra ciudad. La última restricción garantiza que solo exista un único recorrido que abarque todas las ciudades, y no dos o más recorridos inconexos que, en conjunto, solo las abarquen todas.
Formulación de Dantzig-Fulkerson-Johnson
Etiquete las ciudades con los números 1, ..., n y defina:
Llevarsea la distancia de la ciudad i a la ciudad j . Entonces, el problema del viajante se puede escribir como el siguiente problema de programación lineal entera:
La última restricción de la formulación DFJ —denominada restricción de eliminación de subtours— garantiza que ningún subconjunto propio Q pueda formar un subtour, por lo que la solución devuelta es un único tour y no la unión de tours más pequeños. Intuitivamente, para cada subconjunto propio Q de las ciudades, la restricción exige que haya menos aristas que ciudades en Q: si hubiera tantas aristas en Q como ciudades en Q, eso representaría un subtour de las ciudades de Q. Dado que esto conlleva un número exponencial de posibles restricciones, en la práctica se resuelve mediante la generación de filas . [ 23 ]
Calcular una solución
Las líneas de ataque tradicionales para los problemas NP-difíciles son las siguientes:
- Diseñar algoritmos exactos que funcionen razonablemente rápido solo para problemas de tamaño pequeño.
- Diseñar algoritmos "subóptimos" o heurísticos , es decir, algoritmos que proporcionen soluciones aproximadas en un tiempo razonable.
- Encontrar casos especiales para el problema ("subproblemas") para los cuales sean posibles heurísticas mejores o exactas.
Algoritmos exactos
La solución más directa sería probar todas las permutaciones (combinaciones ordenadas) y ver cuál es la más barata (usando una búsqueda por fuerza bruta ). El tiempo de ejecución de este enfoque se encuentra dentro de un factor polinomial de, el factorial del número de ciudades, por lo que esta solución se vuelve poco práctica incluso para solo 20 ciudades.
Una de las primeras aplicaciones de la programación dinámica es el algoritmo de Held-Karp , que resuelve el problema en tiempo. [ 24 ]

Mejorar estos límites de tiempo parece difícil. Por ejemplo, no se ha determinado si un algoritmo exacto clásico para el TSP que se ejecuta en tiempoexiste. [ 25 ] El mejor algoritmo cuántico exacto actual para el TSP debido a Ambainis et al. se ejecuta en tiempo. [ 26 ]
Otros enfoques incluyen:
- Diversos algoritmos de ramificación y acotación que pueden utilizarse para procesar problemas del viajante que contienen miles de ciudades.

- Algoritmos de mejora progresiva, que utilizan técnicas similares a la programación lineal . Esto funciona bien para hasta 200 ciudades.
- Implementaciones de ramificación y acotación y generación de cortes específicos del problema ( ramificación y corte [ 27 ] ); [ 28 ] este es el método de elección para resolver instancias grandes. Este enfoque tiene el récord actual, resolviendo una instancia con 85.900 ciudades, véase Applegate et al. (2006) .
En 2001 se encontró una solución exacta para 15.112 ciudades alemanas de TSPLIB utilizando el método del plano de corte propuesto por George Dantzig , Ray Fulkerson y Selmer M. Johnson en 1954, basado en programación lineal . Los cálculos se realizaron en una red de 110 procesadores ubicados en la Universidad Rice y la Universidad de Princeton . El tiempo total de cálculo fue equivalente a 22,6 años en un solo procesador Alpha de 500 MHz . En mayo de 2004, se resolvió el problema del viajante de comercio que consiste en visitar las 24.978 ciudades de Suecia: se encontró un recorrido de aproximadamente 72.500 kilómetros y se demostró que no existe un recorrido más corto. [ 29 ] En marzo de 2005, el problema del viajante de comercio de visitar los 33.810 puntos de una placa de circuito impreso se resolvió utilizando Concorde TSP Solver : se encontró un recorrido de 66.048.945 unidades y se demostró que no existe un recorrido más corto. El cálculo tardó aproximadamente 15,7 años de CPU (Cook et al. 2006). En abril de 2006 se resolvió una instancia con 85.900 puntos utilizando Concorde TSP Solver , que tardó más de 136 años de CPU; véase Applegate et al. (2006) .
Algoritmos heurísticos y de aproximación
Se han ideado diversas heurísticas y algoritmos de aproximación que proporcionan rápidamente buenas soluciones. Entre ellos se incluye el algoritmo multifragmento . Los métodos modernos pueden encontrar soluciones para problemas extremadamente grandes (millones de ciudades) en un tiempo razonable, con una alta probabilidad de que se encuentren a tan solo un 2-3% de la solución óptima. [ 14 ]
Se reconocen varias categorías de heurísticas.
Heurísticas constructivas

El algoritmo del vecino más cercano (NN) (un algoritmo voraz ) permite al vendedor elegir la ciudad no visitada más cercana como su siguiente movimiento. Este algoritmo produce rápidamente una ruta efectiva corta. Para N ciudades distribuidas aleatoriamente en un plano, el algoritmo produce en promedio una ruta un 25 % más larga que la ruta más corta posible; [ 30 ] sin embargo, existen muchas distribuciones de ciudades especialmente dispuestas que hacen que el algoritmo NN dé la peor ruta. [ 31 ] Esto es cierto tanto para TSP asimétricos como simétricos. [ 32 ] Rosenkrantz et al. [ 33 ] demostraron que el algoritmo NN tiene el factor de aproximaciónpara instancias que satisfacen la desigualdad triangular. Una variación del algoritmo NN, denominada operador de fragmento más cercano (NF), que conecta un grupo (fragmento) de ciudades no visitadas más cercanas, puede encontrar rutas más cortas con iteraciones sucesivas. [ 34 ] El operador NF también puede aplicarse a una solución inicial obtenida por el algoritmo NN para una mayor mejora en un modelo elitista, donde solo se aceptan mejores soluciones.
El recorrido bitónico de un conjunto de puntos es el polígono monótono de perímetro mínimo que tiene a esos puntos como vértices; se puede calcular de manera eficiente con programación dinámica .
Otra heurística constructiva , Match Twice and Stitch (MTS), realiza dos emparejamientos secuenciales , donde el segundo se ejecuta después de eliminar todas las aristas del primero, para generar un conjunto de ciclos. Luego, los ciclos se unen para producir el recorrido final. [ 35 ]
El algoritmo de Christofides y Serdyukov


El algoritmo de Christofides y Serdyukov sigue un esquema similar, pero combina el árbol de expansión mínima con la solución de otro problema: el emparejamiento perfecto de peso mínimo . Esto proporciona un recorrido para el problema del viajante que es, como máximo, 1,5 veces más eficiente que el óptimo. Fue uno de los primeros algoritmos de aproximación y contribuyó en parte a que se prestara atención a los algoritmos de aproximación como un enfoque práctico para problemas intratables . De hecho, el término «algoritmo» no se extendió comúnmente a los algoritmos de aproximación hasta más tarde; el algoritmo de Christofides se denominó inicialmente heurística de Christofides. [ 10 ]
Este algoritmo examina las cosas de manera diferente al utilizar un resultado de la teoría de grafos que ayuda a mejorar el límite inferior del TSP que se originó al duplicar el costo del árbol de expansión mínimo. Dado un grafo euleriano , podemos encontrar un recorrido euleriano entiempo , [ 6 ] así que si tuviéramos un grafo euleriano con ciudades de un TSP como vértices, entonces podemos ver fácilmente que podríamos usar tal método para encontrar un recorrido euleriano para encontrar una solución TSP. Por la desigualdad triangular , sabemos que el recorrido TSP no puede ser más largo que el recorrido euleriano, y por lo tanto tenemos una cota inferior para el TSP. Dicho método se describe a continuación.
- Encuentra un árbol de expansión mínima para el problema.
- Crea duplicados para cada arista para crear un grafo euleriano.
- Encuentra un recorrido euleriano para este grafo.
- Conversión a TSP: si una ciudad se visita dos veces, entonces crea un atajo desde la ciudad anterior en el recorrido a la siguiente.
Para mejorar el límite inferior, se necesita una mejor manera de crear un grafo euleriano. Según la desigualdad triangular, el mejor grafo euleriano debe tener el mismo coste que el mejor recorrido del viajante; por lo tanto, encontrar grafos eulerianos óptimos es al menos tan difícil como el problema del viajante. Una forma de hacerlo es mediante la coincidencia de peso mínimo utilizando algoritmos con una complejidad de. [ 6 ]
La transformación de un grafo en un grafo euleriano comienza con el árbol de expansión mínima; todos los vértices de orden impar deben convertirse en pares, por lo que se debe agregar un emparejamiento para los vértices de grado impar, lo que incrementa el orden de cada vértice de grado impar en 1. [ 6 ] Esto nos deja con un grafo donde cada vértice es de orden par, que por lo tanto es euleriano. Adaptando el método anterior se obtiene el algoritmo de Christofides y Serdyukov:
- Encuentra un árbol de expansión mínima para el problema.
- Crea una correspondencia para el problema con el conjunto de ciudades en orden impar.
- Encuentra un recorrido euleriano para este grafo.
- Conviértelo a TSP usando atajos.
Intercambio por pares

La técnica de intercambio por pares o 2-opt consiste en eliminar iterativamente dos aristas y reemplazarlas por otras dos que reconectan los fragmentos resultantes para formar un recorrido nuevo y más corto. De forma similar, la técnica 3-opt elimina tres aristas y las reconecta para formar un recorrido más corto. Estos son casos particulares del método k -opt. El término Lin-Kernighan se usa erróneamente para referirse a 2-opt; en realidad, Lin-Kernighan es el método k -opt, que es más general.
Para instancias euclidianas, las heurísticas 2-opt dan en promedio soluciones que son aproximadamente un 5% mejores que las producidas por el algoritmo de Christofides. Si comenzamos con una solución inicial hecha con un algoritmo voraz , entonces el número promedio de movimientos disminuye mucho de nuevo y es ; sin embargo, para inicios aleatorios, el número promedio de movimientos es Aunque se trata de un pequeño aumento de tamaño, el número inicial de movimientos para problemas pequeños es 10 veces mayor con un inicio aleatorio en comparación con uno basado en una heurística voraz. Esto se debe a que dichas heurísticas 2-opt explotan las partes "malas" de una solución, como los cruces. Este tipo de heurísticas se utilizan a menudo en problemas de enrutamiento de vehículos para reoptimizar las soluciones de ruta. [ 30 ]
heurística k -óptima o heurística de Lin-Kernighan
La heurística de Lin-Kernighan es un caso especial de la técnica V -opt o variable-opt. Implica los siguientes pasos:
- Dado un recorrido, elimine k aristas mutuamente disjuntas.
- Reensambla los fragmentos restantes para formar un recorrido, evitando subrecorridos disjuntos (es decir, no conectes los extremos de un fragmento). Esto simplifica el problema del viajante en cuestión, convirtiéndolo en un problema mucho más sencillo.
- Cada extremo de un fragmento puede conectarse a otras 2k − 2 posibilidades: de los 2k extremos de fragmentos disponibles, los dos extremos del fragmento en cuestión no están permitidos. Este problema del viajante de comercio (TSP) con 2k ciudades restringidas puede resolverse mediante métodos de fuerza bruta para encontrar la recombinación de menor coste de los fragmentos originales.
El método k -opt más popular es el 3-opt, introducido por Shen Lin de Bell Labs en 1965. Un caso especial del 3-opt se da cuando las aristas no son disjuntas (dos de las aristas son adyacentes). En la práctica, a menudo es posible lograr una mejora sustancial con respecto al 2-opt sin el coste combinatorio del 3-opt general, restringiendo los cambios de 3 aristas a este subconjunto especial donde dos de las aristas eliminadas son adyacentes. Este método, denominado dos y medio-opt, se sitúa aproximadamente a medio camino entre el 2-opt y el 3-opt, tanto en términos de la calidad de los recorridos obtenidos como del tiempo necesario para completarlos.
Heurística V -opt
El método variable-opt está relacionado con el método k -opt y, a su vez, lo generaliza. Mientras que los métodos k -opt eliminan un número fijo ( k ) de aristas del recorrido original, los métodos variable-opt no fijan el tamaño del conjunto de aristas a eliminar. En cambio, el conjunto crece a medida que continúa el proceso de búsqueda. El método más conocido de esta familia es el método Lin-Kernighan (mencionado anteriormente como un nombre inapropiado para 2-opt). Shen Lin y Brian Kernighan publicaron su método por primera vez en 1972, y fue la heurística más fiable para resolver problemas del viajante durante casi dos décadas. Métodos variable-opt más avanzados fueron desarrollados en Bell Labs a finales de la década de 1980 por David Johnson y su equipo de investigación. Estos métodos (a veces llamados Lin-Kernighan-Johnson ) se basan en el método Lin-Kernighan, añadiendo ideas de la búsqueda tabú y la computación evolutiva . La técnica básica de Lin-Kernighan proporciona resultados que garantizan al menos 3-opt. Los métodos de Lin-Kernighan-Johnson calculan un recorrido de Lin-Kernighan y luego lo perturban mediante una mutación que elimina al menos cuatro aristas y reconecta el recorrido de una manera diferente, para luego aplicar la optimización V al nuevo recorrido. Esta mutación suele ser suficiente para alejar el recorrido del mínimo local identificado por Lin-Kernighan. Los métodos de optimización V se consideran las heurísticas más potentes para este problema y son capaces de abordar casos especiales, como el Problema del Ciclo de Hamilton y otros problemas del viajante no métricos en los que fallan otras heurísticas. Durante muchos años, Lin-Kernighan-Johnson identificó soluciones óptimas para todos los problemas del viajante en los que se conocía una solución óptima, y también identificó las mejores soluciones conocidas para todos los demás problemas del viajante en los que se había probado el método.
Mejora aleatoria
Los algoritmos de cadena de Markov optimizados que utilizan subalgoritmos heurísticos de búsqueda local pueden encontrar una ruta extremadamente cercana a la ruta óptima para entre 700 y 800 ciudades.
El problema del viajante es una piedra de toque para muchas heurísticas generales diseñadas para la optimización combinatoria, como los algoritmos genéticos , el recocido simulado , la búsqueda tabú , la optimización por colonia de hormigas , la dinámica de formación de ríos (véase inteligencia de enjambre ) y el método de entropía cruzada .
Heurística de inserción restrictiva
Esto comienza con un subtour como la envoltura convexa y luego inserta otros vértices. [ 36 ]
optimización de colonias de hormigas
En 1993, el investigador de inteligencia artificial Marco Dorigo describió un método para generar heurísticamente "buenas soluciones" para el TSP utilizando una simulación de una colonia de hormigas llamada ACS ( sistema de colonia de hormigas ). [ 37 ] Este método modela el comportamiento observado en hormigas reales para encontrar caminos cortos entre las fuentes de alimento y su nido, un comportamiento emergente que resulta de la preferencia de cada hormiga por seguir las feromonas de rastro depositadas por otras hormigas.
ACS envía un gran número de agentes hormiga virtuales para explorar múltiples rutas posibles en el mapa. Cada hormiga elige probabilísticamente la siguiente ciudad a visitar basándose en una heurística que combina la distancia a la ciudad y la cantidad de feromona virtual depositada en el borde que la conecta con ella. Las hormigas exploran, depositando feromona en cada borde que cruzan, hasta que todas completan un recorrido. En ese momento, la hormiga que completó el recorrido más corto deposita feromona virtual a lo largo de su ruta completa ( actualización global del rastro ). La cantidad de feromona depositada es inversamente proporcional a la duración del recorrido: cuanto más corto sea el recorrido, mayor será la cantidad depositada.


Casos especiales
Métrico
En el TSP métrico , también conocido como delta-TSP o Δ-TSP, las distancias entre ciudades satisfacen la desigualdad triangular .
Una restricción muy natural del TSP es exigir que las distancias entre ciudades formen una métrica que satisfaga la desigualdad triangular ; es decir, la conexión directa de A a B nunca está más lejos que la ruta a través de la ciudad intermedia C :
- .
Los bordes, a su vez, construyen una métrica sobre el conjunto de vértices. Cuando las ciudades se consideran puntos en el plano, muchas funciones de distancia naturales son métricas, por lo que muchos casos reales del problema del viajante satisfacen esta restricción.
A continuación se muestran algunos ejemplos de problemas del viajante métricos para diversas métricas.
- En el problema del viajante euclidiano (véase más abajo), la distancia entre dos ciudades es la distancia euclidiana entre los puntos correspondientes.
- En el problema del viajante rectilíneo, la distancia entre dos ciudades es la suma de los valores absolutos de las diferencias entre sus coordenadas x e y . Esta métrica se conoce comúnmente como distancia de Manhattan o métrica de manzana.
- En la métrica máxima , la distancia entre dos puntos es el máximo de los valores absolutos de las diferencias de sus coordenadas x e y .
Las dos últimas métricas aparecen, por ejemplo, en el enrutamiento de una máquina que perfora un conjunto determinado de orificios en una placa de circuito impreso . La métrica de Manhattan corresponde a una máquina que ajusta primero una coordenada y luego la otra, de modo que el tiempo para moverse a un nuevo punto es la suma de ambos movimientos. La métrica máxima corresponde a una máquina que ajusta ambas coordenadas simultáneamente, de modo que el tiempo para moverse a un nuevo punto es el más lento de los dos movimientos.
En su definición, el TSP no permite visitar dos veces una misma ciudad, pero muchas aplicaciones no necesitan esta restricción. En tales casos, una instancia simétrica no métrica puede reducirse a una métrica. Esto reemplaza el grafo original con un grafo completo en el que la distancia entre ciudadesse reemplaza por la longitud del camino más corto entre A y B en el gráfico original.
euclidiano
Para puntos en el plano euclidiano , la solución óptima del problema del viajante forma un polígono simple que pasa por todos los puntos, una poligonalización de los puntos. [ 38 ] Cualquier solución no óptima con cruces puede convertirse en una solución más corta sin cruces mediante optimizaciones locales. La distancia euclidiana obedece la desigualdad triangular, por lo que el TSP euclidiano forma un caso especial del TSP métrico. Sin embargo, incluso cuando los puntos de entrada tienen coordenadas enteras, sus distancias generalmente toman la forma de raíces cuadradas , y la longitud de un recorrido es una suma de radicales , lo que hace que sea difícil realizar el cálculo simbólico necesario para realizar comparaciones exactas de las longitudes de diferentes recorridos.
Al igual que el TSP general, el TSP euclidiano exacto es NP-difícil, pero el problema con las sumas de radicales es un obstáculo para demostrar que su versión de decisión está en NP y, por lo tanto, es NP-completa. Una versión discretizada del problema con distancias redondeadas a enteros es NP-completa. [ 39 ] Con coordenadas racionales y la métrica euclidiana real, se sabe que el TSP euclidiano está en la Jerarquía de Conteo, [ 40 ] una subclase de PSPACE . Con coordenadas reales arbitrarias, el TSP euclidiano no puede estar en tales clases, ya que hay una cantidad incontable de entradas posibles. A pesar de estas complicaciones, el TSP euclidiano es mucho más fácil que el caso de la métrica general para la aproximación. [ 41 ] Por ejemplo, el árbol de expansión mínima del grafo asociado a una instancia del TSP euclidiano es un árbol de expansión mínima euclidiana , y por lo tanto se puede calcular en un tiempo esperado de O ( n log n ) para n puntos (considerablemente menor que el número de aristas). Esto permite que el algoritmo simple de aproximación 2 para el TSP con desigualdad triangular anterior funcione más rápidamente.
En general, para cualquier c > 0, donde d es el número de dimensiones en el espacio euclidiano, existe un algoritmo de tiempo polinomial que encuentra un recorrido de longitud como máximo (1 + 1/ c ) veces el óptimo para instancias geométricas del TSP en
tiempo; esto se denomina esquema de aproximación en tiempo polinomial (PTAS). [ 42 ] Sanjeev Arora y Joseph SB Mitchell recibieron el Premio Gödel en 2010 por su descubrimiento simultáneo de un PTAS para el TSP euclidiano.
En la práctica, se siguen utilizando heurísticas más sencillas con garantías más débiles.
Asimétrico
En la mayoría de los casos, la distancia entre dos nodos en la red del problema del viajante (TSP) es la misma en ambas direcciones. El caso en el que la distancia de A a B no es igual a la distancia de B a A se denomina TSP asimétrico. Una aplicación práctica del TSP asimétrico es la optimización de rutas mediante el enrutamiento a nivel de calle (que se vuelve asimétrico debido a calles de sentido único, vías de acceso, autopistas, etc.).
El problema de la grúa apiladora puede considerarse un caso especial del problema del viajante asimétrico (TSP). En este problema, la entrada consiste en pares ordenados de puntos en un espacio métrico, que deben visitarse consecutivamente en orden durante el recorrido. Estos pares de puntos pueden verse como los nodos de un TSP asimétrico, donde las distancias asimétricas reflejan el costo combinado de viajar desde el primer punto de un par hasta el segundo, y luego desde el segundo punto de un par hasta el primer punto del siguiente par.
Conversión a simétrico
Resolver un grafo TSP asimétrico puede ser algo complejo. La siguiente es una matriz de 3×3 que contiene todos los pesos posibles de los caminos entre los nodos A , B y C. Una opción es convertir una matriz asimétrica de tamaño N en una matriz simétrica de tamaño 2N . [ 43 ]
Para duplicar el tamaño, cada uno de los nodos del grafo se duplica, creando un segundo nodo fantasma , vinculado al nodo original con una arista "fantasma" de peso muy bajo (posiblemente negativo), aquí denotada como − w . (Alternativamente, las aristas fantasma tienen peso 0, y se suma peso w a todas las demás aristas). La matriz original de 3×3 mostrada arriba es visible en la parte inferior izquierda y la transpuesta de la original en la parte superior derecha. Ambas copias de la matriz tienen sus diagonales reemplazadas por los caminos de salto de bajo costo, representados por − w . En el nuevo grafo, ninguna arista vincula directamente los nodos originales ni ninguna arista vincula directamente los nodos fantasma.
El peso − w de las aristas "fantasma" que unen los nodos fantasma con los nodos originales correspondientes debe ser lo suficientemente bajo para garantizar que todas las aristas fantasma pertenezcan a cualquier solución simétrica óptima del TSP en el nuevo grafo ( w = 0 no siempre es lo suficientemente bajo). Como consecuencia, en el recorrido simétrico óptimo, cada nodo original aparece junto a su nodo fantasma (por ejemplo, un camino posible es A → A ′ → C → C ′ → B → B ′ → A), y al fusionar nuevamente los nodos originales y fantasma obtenemos una solución (óptima) del problema asimétrico original (en nuestro ejemplo, A → C → B → A).
Problema del analista
En la teoría geométrica de la medida existe un problema análogo que plantea lo siguiente: ¿bajo qué condiciones puede un subconjunto E del espacio euclidiano estar contenido en una curva rectificable (es decir, cuándo existe una curva de longitud finita que recorre todos los puntos de E )? Este problema se conoce como el problema del viajante de comercio del analista .
Longitud de trayectoria para conjuntos aleatorios de puntos en un cuadrado
Suponersonvariables aleatorias independientes con distribución uniforme en el cuadradoy dejarsea la longitud del camino más corto (es decir, la solución del TSP) para este conjunto de puntos, según la distancia euclidiana usual . Se sabe [ 9 ] que, casi con seguridad,
dóndees una constante positiva que no se conoce explícitamente. Dado que(véase más abajo), se deduce del teorema de convergencia acotada que, por lo tanto, límites inferiores y superiores enseguir desde los límites en.
El límite casi segurocomoEs posible que no existan si las ubicaciones independientesse reemplazan con observaciones de un proceso ergódico estacionario con marginales uniformes. [ 44 ]
Límite superior
Límite inferior
Al observar quees mayor queveces la distancia entrey el punto más cercano, se obtiene (después de un breve cálculo)
Se obtiene un mejor límite inferior al observar quees mayor queveces la suma de las distancias entrey los puntos más cercanos y segundos más cercanos, lo que da [ 9 ]
Esto se ha mejorado a: [ 47 ]
Held y Karp dieron un algoritmo de tiempo polinomial que proporciona cotas inferiores numéricas paray por lo tanto para, que parecen ser buenos hasta más o menos el 1%. [ 48 ] [ 49 ] En particular, David S. Johnson obtuvo un límite inferior mediante un experimento computacional: [ 50 ]
donde 0,522 proviene de los puntos cercanos al límite cuadrado que tienen menos vecinos, y Christine L. Valenzuela y Antonia J. Jones obtuvieron el siguiente límite inferior numérico: [ 51 ]
- .
Complejidad computacional
Se ha demostrado que el problema es NP-difícil (más precisamente, es completo para la clase de complejidad FP NP ; véase problema de función ), y la versión de problema de decisión ("dados los costos y un número x , decidir si existe una ruta de ida y vuelta más barata que x ") es NP-completa . El problema del viajante de comercio con cuello de botella también es NP-difícil. El problema sigue siendo NP-difícil incluso para el caso en que las ciudades están en el plano con distancias euclidianas , así como en varios otros casos restrictivos. Eliminar la condición de visitar cada ciudad "solo una vez" no elimina la NP-dificultad, ya que en el caso planar hay un recorrido óptimo que visita cada ciudad solo una vez (de lo contrario, por la desigualdad triangular , un atajo que omita una visita repetida no aumentaría la longitud del recorrido).
Complejidad de la aproximación
En el caso general, encontrar el recorrido más corto del viajante es NPO -completo. [ 52 ] Si la medida de distancia es una métrica (y por lo tanto simétrica), el problema se vuelve APX -completo, [ 53 ] y el algoritmo de Christofides y Serdyukov lo aproxima dentro de 1,5. [ 54 ] [ 55 ] [ 10 ]
Si las distancias se restringen a 1 y 2 (pero siguen siendo una métrica), entonces la razón de aproximación se convierte en 8/7. [ 56 ] En el caso asimétrico con desigualdad triangular , en 2018, Svensson, Tarnawski y Végh desarrollaron una aproximación de factor constante. [ 57 ] Un algoritmo de Vera Traub y Jens Vygen logra una razón de rendimiento de. [ 58 ] Este factor se mejoró aún más para. [ 59 ] El límite de inaproximabilidad mejor conocido es 75/74. [ 60 ]
El problema de maximización correspondiente de encontrar el recorrido más largo del viajante de comercio es aproximable dentro de 63/38. [ 61 ] Si la función de distancia es simétrica, entonces el recorrido más largo puede aproximarse dentro de 4/3 mediante un algoritmo determinista [ 62 ] y dentro demediante un algoritmo aleatorio . [ 63 ]
Rendimiento humano y animal
El TSP, en particular la variante euclidiana del problema, ha atraído la atención de los investigadores en psicología cognitiva . Se ha observado que los humanos son capaces de producir soluciones casi óptimas rápidamente, de manera casi lineal, con un rendimiento que varía desde un 1 % menos eficiente, para grafos con 10-20 nodos, hasta un 11 % menos eficiente para grafos con 120 nodos. [ 64 ] [ 65 ] La aparente facilidad con la que los humanos generan con precisión soluciones casi óptimas al problema ha llevado a los investigadores a plantear la hipótesis de que los humanos utilizan una o más heurísticas, siendo las dos teorías más populares posiblemente la hipótesis de la envoltura convexa y la heurística de evitación de cruces. [ 66 ] [ 67 ] [ 68 ] Sin embargo, evidencia adicional sugiere que el rendimiento humano es bastante variable, y las diferencias individuales, así como la geometría del grafo, parecen afectar el rendimiento en la tarea. [ 69 ] [ 70 ] [ 71 ] Sin embargo, los resultados sugieren que el rendimiento de las computadoras en el TSP puede mejorarse al comprender y emular los métodos utilizados por los humanos para estos problemas, [ 72 ] y también han llevado a nuevas perspectivas sobre los mecanismos del pensamiento humano. [ 73 ] El primer número del Journal of Problem Solving estuvo dedicado al tema del rendimiento humano en el TSP, [ 74 ] y una revisión de 2011 enumeró docenas de artículos sobre el tema. [ 73 ]
Un estudio de 2011 sobre cognición animal titulado "Deja que la paloma conduzca el autobús", inspirado en el libro infantil " ¡No dejes que la paloma conduzca el autobús!" , examinó la cognición espacial en palomas mediante el estudio de sus patrones de vuelo entre varios comederos en un laboratorio, en relación con el problema del viajante. En el primer experimento, se colocaron palomas en la esquina de una sala de laboratorio y se les permitió volar a comederos cercanos con guisantes. Los investigadores descubrieron que las palomas utilizaban principalmente la proximidad para determinar qué comedero elegirían a continuación. En el segundo experimento, los comederos se dispusieron de tal manera que volar al comedero más cercano en cada oportunidad resultaría ineficiente si las palomas tuvieran que visitar todos los comederos. Los resultados del segundo experimento indican que las palomas, si bien siguen prefiriendo las soluciones basadas en la proximidad, "pueden planificar con varios pasos de antelación a lo largo de la ruta cuando las diferencias en los costes de viaje entre las rutas eficientes y menos eficientes, basadas en la proximidad, se hacen mayores". [ 75 ] Estos resultados son consistentes con otros experimentos realizados con animales no primates, los cuales han demostrado que algunos de ellos fueron capaces de planificar rutas de viaje complejas. Esto sugiere que los animales no primates podrían poseer una capacidad cognitiva espacial relativamente sofisticada.
Computación natural
Los humanos no son la única especie que muestra una eficiencia excelente. Por ejemplo, cuando se le presenta una configuración espacial de fuentes de alimento, el insecto ameboide Physarum polycephalum adapta su morfología para crear una ruta eficiente entre las fuentes de alimento, lo que también puede considerarse una solución aproximada al problema del viajante. [ 76 ] De manera similar, se ha demostrado que las abejas melíferas y los abejorros son muy hábiles para maximizar la eficiencia con un alto grado de precisión al recolectar néctar y polen mediante el uso de inteligencia colectiva . [ 77 ] [ 78 ]
Puntos de referencia
Para la evaluación comparativa de algoritmos TSP, TSPLIB [ 79 ] es una biblioteca de instancias de ejemplo del TSP y problemas relacionados. Muchos de ellos son listas de ciudades reales y diseños de circuitos impresos reales . [ 80 ]
Cultura popular
- El viajante de comercio , del director Timothy Lanzone, es la historia de cuatro matemáticos contratados por el gobierno de los Estados Unidos para resolver el problema más esquivo en la historia de la informática: P vs. NP . [ 81 ]
- El matemático Robert A. Bosch utiliza soluciones al problema en un subgénero llamado arte TSP. [ 82 ]
Véase también
- Problema del viajero canadiense
- Algoritmo exacto
- Problema de inspección de rutas (también conocido como "problema del cartero chino")
- Problema del TSP (Problema del viajante)
- Los siete puentes de Königsberg
- El problema del viajante de comercio de Steiner
- Desafío del metro
- Desafío del tubo
- Problema de enrutamiento de vehículos
- Exploración de gráficos
- Problema del cartero chino mixto
- Enrutamiento de arco
- Problema de enrutamiento de quitanieves
- Matriz Monge
- Problema de la estrella del anillo
- Problema de diseño y programación de redes de transporte marítimo de línea regular
- Problema de diseño de la red de rutas de transporte público
Notas
- ^ Labbé, Martine; Laporte, Gilbert; Rodríguez Martín, Inmaculada; Salazar González, Juan José (mayo de 2004). "El problema de la estrella anillo: análisis poliédrico y algoritmo exacto". Redes . 43 (3): 177– 189. doi : 10.1002/net.10114 . ISSN 0028-3045 .
- ↑ Consulte el problema del viajero del tiempo (TSP) que ya se ha resuelto con una precisión del 0,05 % respecto a la solución óptima.
- ↑ "Der Handlungsreisende – wie er sein soll und was er zu tun hat, um Aufträge zu erhalten und eines glücklichen Erfolgs in seinen Geschäften gewiß zu sein – von einem alten Commis-Voyageur" (El viajante de comercio: cómo debe ser y qué debe hacer para obtener comisiones y estar seguro del feliz éxito en su negocio – por un viejo comisario viajero )
- ↑ Se puede encontrar un análisis de los primeros trabajos de Hamilton y Kirkman en Graph Theory, 1736–1936 de Biggs, Lloyd y Wilson (Clarendon Press, 1986).
- ↑ Citado y traducción al inglés en Schrijver (2005) . Original alemán: "Wir bezeichnen als Botenproblem (weil diese Frage in der Praxis von jedem Postboten, übrigens auch von vielen Reisenden zu lösen ist) die Aufgabe, für endlich viele Punkte, deren paarweise Abstände bekannt sind, den kürzesten die Punkte verbindenden Weg zu finden. Dieses Problem ist natürlich stets durch endlich viele Versuche lösbar, welche die Anzahl der Versuche unter die Anzahl der Permutationen der gegebenen Punkte herunterdrücken würden, sind die Regel, man solle vom Ausgangspunkt erst zum nächstgelegenen Punkt, dann zu dem. diesem nächstgelegenen Punkt gehen usw., liefert im allgemeinen nicht den kürzesten Weg."
- 1 2 3 4 5 6 7 8 Lawler, EL (1985). El problema del viajante: una guía de optimización combinatoria (Reimpresión con correcciones, ed.). John Wiley & Sons. ISBN 978-0-471-90413-7.
- ↑ Robinson, Julia (5 de diciembre de 1949). Sobre el juego hamiltoniano (un problema del viajante) (PDF) (Informe técnico). Santa Mónica, CA: The RAND Corporation. RM-303 . Recuperado el 2 de mayo de 2020 a través del Centro de Información Técnica de Defensa.
- ↑ Un análisis detallado de la conexión entre Menger y Whitney, así como del crecimiento en el estudio del TSP, se puede encontrar en Schrijver (2005) .
- 1 2 3 Beardwood, Halton y Hammersley (1959) .
- 1 2 3 van Bevern, René; Slugina, Viktoriia A. (2020). "Una nota histórica sobre el algoritmo de aproximación 3/2 para el problema del viajante métrico". Historia Mathematica . 53 : 118– 127. arXiv : 2004.02437 . doi : 10.1016/j.hm.2020.04.003 .
- ↑ Klarreich, Erica (30 de enero de 2013). "Científicos informáticos encuentran nuevos atajos para el infame problema del viajante" . WIRED . Consultado el 14 de junio de 2015 .
- ↑ Klarreich, Erica (8 de octubre de 2020). "Científicos informáticos baten récord de viajante de comercio" . Quanta Magazine . Consultado el 13 de octubre de 2020 .
- ↑ Karlin, Anna R. ; Klein, Nathan; Gharan, Shayan Oveis (2021), "Un algoritmo de aproximación (ligeramente) mejorado para el TSP métrico", en Khuller, Samir ; Williams, Virginia Vassilevska (eds.), STOC '21: 53.º Simposio Anual ACM SIGACT sobre Teoría de la Computación, Evento Virtual, Italia, 21-25 de junio de 2021 , pp. 32–45 , arXiv : 2007.01409 , doi : 10.1145/3406325.3451009 , ISBN 978-1-4503-8053-9
- 1 2 Rego, César; Gamboa, Dorabela; Glover, Fred; Osterman, Colin (2011), "Heurísticas del problema del viajante: métodos líderes, implementaciones y últimos avances", European Journal of Operational Research , 211 (3): 427– 441, doi : 10.1016/j.ejor.2010.09.010 , MR 2774420 .
- ↑ McGinty, Jo Craven (12-13 de agosto de 2017). "¿Cómo se arreglan las rutas de los autobuses escolares? Llamen al MIT" (PDF) . The Wall Street Journal . pág. A2. Archivado del original (PDF) el 12 de abril de 2018.
- ↑ Behzad, Arash; Modarres, Mohammad (2002), "Nueva transformación eficiente del problema generalizado del viajante de comercio en el problema del viajante de comercio", Actas de la 15.ª Conferencia Internacional de Ingeniería de Sistemas (Las Vegas)
- ↑ Papadimitriou, CH; Steiglitz, K. (1998), Optimización combinatoria: algoritmos y complejidad , Mineola, NY: Dover, págs. 308-309.
- ↑ Tucker, AW (1960), "Sobre grafos dirigidos y programas enteros", Proyecto de investigación matemática de IBM (Universidad de Princeton)
- ↑ Dantzig, George B. (1963), Programación lineal y extensiones , Princeton, NJ: PrincetonUP, págs. 545–7, ISBN 0-691-08000-3, sexta edición, 1974.
- ↑ Velednitsky, Mark (2017). "Prueba combinatoria breve de que el politopo DFJ está contenido en el politopo MTZ para el problema del viajante asimétrico". Operations Research Letters . 45 (4): 323– 324. arXiv : 1805.06997 . doi : 10.1016/j.orl.2017.04.010 .
- ↑ Bektaş, Tolga; Gouveia, Luis (2014). "¿Réquiem por las restricciones de eliminación de subtours de Miller–Tucker–Zemlin?". European Journal of Operational Research . 236 (3): 820– 832. doi : 10.1016/j.ejor.2013.07.038 .
- ↑ CE Miller, AW Tucker y RA Zemlin. 1960. Formulación de programación entera de problemas del viajante de comercio. J. ACM 7, 4 (octubre de 1960), 326–329. DOI: https://doi.org/10.1145/321043.321046
- ↑ Dantzig, G.; Fulkerson, R.; Johnson, S. (noviembre de 1954). "Solución de un problema del viajante a gran escala". Journal of the Operations Research Society of America . 2 (4): 393– 410. doi : 10.1287/opre.2.4.393 .
- ↑ Bellman (1960) , Bellman (1962) , Held y Karp (1962)
- ↑ Woeginger (2003) .
- ^ Ambainis, Andris; Balodis, Kaspars; Iraids, Jānis; Kokainis, Martins; Prūsis, Krišjānis; Vihrovs, Jevgēnijs (2019). "Aceleraciones cuánticas para algoritmos de programación dinámica de tiempo exponencial" . Actas del trigésimo simposio anual ACM-SIAM sobre algoritmos discretos . págs. 1783-1793 . doi : 10.1137/1.9781611975482.107 . ISBN 978-1-61197-548-2.
- ↑ Padberg y Rinaldi (1991) .
- ↑ Problema del viajante - Ramificación y acotación en YouTube . Cómo cortar ramas improductivas usando filas y columnas reducidas como en el algoritmo de matriz húngara.
- ^ Applegate, David; Bixby, Robert; Chvátal, Vašek; Cocinero, William; Helsgaun, Keld (junio de 2004). "Gira óptima por Suecia" . Consultado el 11 de noviembre de 2020 .
- 1 2 Johnson, DS ; McGeoch, LA (1997). "El problema del viajante: un estudio de caso en optimización local" (PDF) . En Aarts, EHL; Lenstra, JK (eds.). Búsqueda local en optimización combinatoria . Londres: John Wiley and Sons Ltd. pp. 215– 310.
- ↑ Gutina, Gregory; Yeob, Anders; Zverovich, Alexey (15 de marzo de 2002). "El problema del viajante no debería ser codicioso: análisis de dominación de heurísticas de tipo codicioso para el TSP" . Matemáticas Aplicadas Discretas . 117 ( 1–3 ): 81–86 . doi : 10.1016/S0166-218X(01)00195-0 .>
- ↑ Zverovitch, Alexei; Zhang, Weixiong; Yeo, Anders; McGeoch, Lyle A.; Gutin, Gregory; Johnson, David S. (2007), "Análisis experimental de heurísticas para el ATSP", El problema del viajante y sus variaciones , Optimización combinatoria, Springer, Boston, MA, pp. 445–487 , CiteSeerX 10.1.1.24.2386 , doi : 10.1007/0-306-48213-4_10 , ISBN 978-0-387-44459-8
- ↑ Rosenkrantz, DJ; Stearns, RE; Lewis, PM (14–16 de octubre de 1974). Algoritmos aproximados para el problema del viajante de comercio . XV Simposio Anual sobre Teoría de Conmutación y Autómatas (swat 1974). doi : 10.1109/SWAT.1974.4 .
- ↑ Ray, SS; Bandyopadhyay, S.; Pal, SK (2007). "Operadores genéticos para la optimización combinatoria en el problema del viajante y el ordenamiento de genes en microarrays". Applied Intelligence . 26 (3): 183– 195. CiteSeerX 10.1.1.151.132 . doi : 10.1007/s10489-006-0018-y .
- ↑ Kahng, AB; Reda, S. (2004). "Match Twice and Stitch: A New TSP Tour Construction Heuristic". Operations Research Letters . 32 (6): 499– 509. doi : 10.1016/j.orl.2004.04.001 .
- ↑ Alatartsev, Sergey; Augustine, Marcus; Ortmeier, Frank (2 de junio de 2013). "Heurística de inserción restrictiva para el problema del viajante con vecindarios" (PDF) . Actas de la Conferencia Internacional sobre Planificación y Programación Automatizadas . 23 : 2–10 . doi : 10.1609/icaps.v23i1.13539 .
- ↑ Dorigo, Marco; Gambardella, Luca Maria (1997). "Colonias de hormigas para el problema del viajante". Biosystems . 43 (2): 73– 81. Bibcode : 1997BiSys..43...73D . CiteSeerX 10.1.1.54.7734 . doi : 10.1016/S0303-2647(97)01708-5 . PMID 9231906 .
- ↑ Quintas, LV; Supnick, Fred (1965). "Sobre algunas propiedades de los circuitos hamiltonianos más cortos". The American Mathematical Monthly . 72 (9): 977– 980. doi : 10.2307/2313333 . JSTOR 2313333. MR 0188872 .
- ↑ Papadimitriou (1977) .
- ↑ Allender et al. (2007) .
- ↑ Larson y Odoni (1981) .
- ↑ Arora (1998) .
- ↑ Jonker, Roy; Volgenant, Ton (1983). "Transformación de problemas del viajante asimétricos en simétricos". Operations Research Letters . 2 ( 161–163 ): 1983. doi : 10.1016/0167-6377(83)90048-2 .
- ↑ Arlotto, Alessandro; Steele, J. Michael (2016), "Teorema de Beardwood-Halton-Hammersley para secuencias ergódicas estacionarias: un contraejemplo", The Annals of Applied Probability , 26 (4): 2141–2168 , arXiv : 1307.0221 , doi : 10.1214/15-AAP1142
- ↑ Few, L. (1955). "El camino más corto y la ruta más corta a través de n puntos". Mathematika . 2 (2): 141– 144. doi : 10.1112/s0025579300000784 .
- ↑ Fiechter, C.-N. (1994). "Un algoritmo de búsqueda tabú paralelo para grandes problemas del viajante de comercio" . Disc. Applied Math . 51 (3): 243– 267. doi : 10.1016/0166-218X(92)00033-I .
- ↑ Steinerberger (2015) .
- ↑ Held, M.; Karp, RM (1970). "El problema del viajante y los árboles de expansión mínima". Operations Research . 18 (6): 1138– 1162. Bibcode : 1970OpRes..18.1138H . doi : 10.1287/opre.18.6.1138 .
- ↑ Goemans, Michel X. ; Bertsimas, Dimitris J. (1991). "Análisis probabilístico de la cota inferior de Held y Karp para el problema del viajante euclidiano". Mathematics of Operations Research . 16 (1): 72– 89. doi : 10.1287/moor.16.1.72 .
- ↑ Johnson, DS; McGeoch, LA; Rothberg, EE (1996). "Análisis experimental asintótico para la cota del viajante de comercio de Held-Karp" (PDF) . En Tardos, Éva (ed.). Actas del 7.º Simposio Anual ACM-SIAM sobre Algoritmos Discretos . Filadelfia: Society for Industrial and Applied Mathematics. pp. 341–350 . ISBN 978-0-89871-366-4Archivado del original (PDF) el 16 de junio de 2013.
- ↑ Christine L. Valenzuela y Antonia J. Jones. Archivado el 25 de octubre de 2007 en Wayback Machine.
- ↑ Orponen, P.; Mannila, H. (1987). Sobre reducciones que preservan la aproximación: problemas completos y medidas robustas (Informe). Departamento de Ciencias de la Computación, Universidad de Helsinki. Informe técnico C-1987–28.
- ↑ Papadimitriou y Yannakakis (1993) .
- ↑ Christofides (1976) .
- ^ Serdyukov, Anatoliy I. (1978), "О некоторых экстремальных обходах в графах" [ Sobre algunos paseos extremos en gráficos ] (PDF) , Upravlyaemye Sistemy (en ruso), 17 : 76– 79
- ↑ Berman y Karpinski (2006) .
- ↑ Svensson, Ola; Tarnawski, Jakub; Végh, László A. (2018). «Un algoritmo de aproximación de factor constante para el problema del viajante asimétrico» . Actas del 50.º Simposio Anual ACM SIGACT sobre Teoría de la Computación . 2018. Los Ángeles: ACM Press. pp. 204–213 . doi : 10.1145/3188745.3188824 . ISBN 978-1-4503-5559-9.
- ↑ Traub, Vera ; Vygen, Jens (8 de junio de 2020). "Un algoritmo de aproximación mejorado para ATSP" . Actas del 52.º Simposio Anual ACM SIGACT sobre Teoría de la Computación . Stoc 2020. Chicago, IL: ACM. págs. 1-13 . arXiv : 1912.00670 . doi : 10.1145/3357713.3384233 . ISBN 978-1-4503-6979-4.
- ↑ Traub, Vera; Vygen, Jens (2024). Algoritmos de aproximación para problemas del viajante . Cambridge University Press. ISBN 9781009445436.
- ↑ Karpinski, Lampis y Schmied (2015) .
- ↑ Kosaraju, Park y Stein (1994) .
- ↑ Serdyukov (1984) .
- ↑ Hassin y Rubinstein (2000) .
- ↑ Macgregor, JN; Ormerod, T. (junio de 1996), "Rendimiento humano en el problema del viajante", Perception & Psychophysics , 58 (4): 527– 539, doi : 10.3758/BF03213088 , PMID 8934685 .
- ↑ Dry, Matthew; Lee, Michael D.; Vickers, Douglas; Hughes, Peter (2006). "Rendimiento humano en problemas del viajante presentados visualmente con diferentes números de nodos". The Journal of Problem Solving . 1 (1). CiteSeerX 10.1.1.360.9763 . doi : 10.7771/1932-6246.1004 .
- ↑ Rooij, Iris Van; Stege, Ulrike; Schactman, Alissa (1 de marzo de 2003). "Cruces de la envoltura convexa y del recorrido en el problema del viajante euclidiano: implicaciones para los estudios de rendimiento humano". Memory & Cognition . 31 (2): 215– 220. CiteSeerX 10.1.1.12.6117 . doi : 10.3758/bf03194380 . PMID 12749463 .
- ↑ MacGregor, James N.; Chu, Yun (2011). "Rendimiento humano en el problema del viajante y problemas relacionados: una revisión" . The Journal of Problem Solving . 3 (2). doi : 10.7771/1932-6246.1090 .
- ↑ MacGregor, James N.; Chronicle, Edward P.; Ormerod, Thomas C. (1 de marzo de 2004). "¿Cubierta convexa o evitación de cruces? Heurísticas de solución en el problema del viajante" . Memory & Cognition . 32 (2): 260– 270. doi : 10.3758/bf03196857 . PMID 15190718 .
- ↑ Vickers, Douglas; Mayo, Therese; Heitmann, Megan; Lee, Michael D; Hughes, Peter (2004). "Inteligencia y diferencias individuales en el rendimiento en tres tipos de problemas de optimización presentados visualmente". Personality and Individual Differences . 36 (5): 1059– 1071. doi : 10.1016/s0191-8869(03)00200-9 .
- ↑ Kyritsis, Markos; Gulliver, Stephen R.; Feredoes, Eva (12 de junio de 2017). "Reconociendo las violaciones de la heurística de evitación de cruces al resolver el problema del viajante euclidiano". Psychological Research . 82 (5): 997– 1009. doi : 10.1007/s00426-017-0881-7 . PMID 28608230 .
- ↑ Kyritsis, Markos; Blathras, George; Gulliver, Stephen; Varela, Vasiliki-Alexia (11 de enero de 2017). " Sentido de la orientación y escrupulosidad como predictores del rendimiento en el problema del viajante euclidiano" . Heliyon . 3 (11) e00461. Bibcode : 2017Heliy...300461K . doi : 10.1016/j.heliyon.2017.e00461 . PMC 5727545. PMID 29264418 .
- ↑ Kyritsis, Markos; Gulliver, Stephen R.; Feredoes, Eva; Din, Shahab Ud (diciembre de 2018). "Comportamiento humano en el problema del viajante euclidiano: modelado computacional de heurísticas y efectos figurativos". Cognitive Systems Research . 52 : 387–399 . doi : 10.1016/j.cogsys.2018.07.027 .
- 1 2 MacGregor, James N.; Chu, Yun (2011), "Rendimiento humano en el problema del viajante y problemas relacionados: una revisión" , Journal of Problem Solving , 3 (2), doi : 10.7771/1932-6246.1090.
- ↑ Journal of Problem Solving 1(1) , 2006, recuperado el 06-06-2014.
- ↑ Gibson, Brett; Wilkinson, Matthew; Kelly, Debbie (1 de mayo de 2012). "Dejemos que la paloma conduzca el autobús: las palomas pueden planificar rutas futuras en una habitación". Animal Cognition . 15 (3): 379– 391. doi : 10.1007/s10071-011-0463-9 . PMID 21965161 .
- ↑ Jones, Jeff; Adamatzky, Andrew (2014), "Cálculo del problema del viajante mediante una mancha que se contrae" (PDF) , Natural Computing : 2, 13, arXiv : 1303.4969 , archivado del original (PDF) el 4 de junio de 2017 , recuperado el 26 de enero de 2016
- ↑ Morell, Virginia (21 de septiembre de 2012). "Matemáticas voladoras: las abejas resuelven el problema del viajante" . Wired . ISSN 1059-1028 . Consultado el 30 de noviembre de 2025 .
- ↑ "Los abejorros resuelven el problema del viajante de comercio sobre la marcha" . New Scientist . 11 de diciembre de 2017. Consultado el 30 de noviembre de 2025 .
- ↑ "TSPLIB" . GitHub . Consultado el 28 de diciembre de 2025 .
- ↑ Reinelt, Gerhard (noviembre de 1991). "TSPLIB: una biblioteca de problemas del problema del viajante". ORSA Journal on Computing . 3 (4). Institute for Operations Research and the Management Sciences (INFORMS): 376–384 . doi : 10.1287/ijoc.3.4.376 .
- ^ Geere, Duncan (26 de abril de 2012). "La película "El viajante" analiza las repercusiones si P es igual a NP . Wired UK . Consultado el 26 de abril de 2012 .
- ↑ Cuando la Mona Lisa es NP-difícil Por Evelyn Lamb, Scientific American, 31 de abril de 2015
Referencias
- Applegate, DL; Bixby, RM; Chvátal, V.; Cook, WJ (2006), El problema del viajante de comercio , Princeton University Press, ISBN 978-0-691-12993-8.
- Allender, Eric; Bürgisser, Peter; Kjeldgaard-Pedersen, Johan; Mitersen, Peter Bro (2007), "Sobre la complejidad del análisis numérico" (PDF) , SIAM J. Comput. , 38 (5): 1987–2006 , CiteSeerX 10.1.1.167.5495 , doi : 10.1137/070697926 .
- Arora, Sanjeev (1998), "Esquemas de aproximación en tiempo polinomial para el problema del viajante euclidiano y otros problemas geométricos" (PDF) , Journal of the ACM , 45 (5): 753–782 , doi : 10.1145/290179.290180 , MR 1668147 .
- Beardwood, J.; Halton, JH; Hammersley, JM (octubre de 1959), "El camino más corto a través de muchos puntos", Actas de la Sociedad Filosófica de Cambridge , 55 (4): 299–327 , Bibcode : 1959PCPS...55..299B , doi : 10.1017/s0305004100034095.
- Bellman, R. ( 1960), "Procesos combinatorios y programación dinámica", en Bellman, R.; Hall, M. Jr. (eds.), Análisis combinatorio, Actas de simposios en matemáticas aplicadas 10 , Sociedad Matemática Americana, pp. 217–249 .
- Bellman, R. (1962), "Tratamiento de programación dinámica del problema del viajante", Journal of the Association for Computing Machinery , 9 : 61–63 , doi : 10.1145/321105.321111.
- Berman, Piotr; Karpinski, Marek (2006), "Algoritmo de aproximación 8/7 para (1,2)-TSP", Actas del 17.º Simposio ACM-SIAM sobre Algoritmos Discretos (SODA '06) , págs. 641–648 , CiteSeerX 10.1.1.430.2224 , doi : 10.1145/1109557.1109627 , ISBN 978-0-89871-605-4, ECCC TR05-069 .
- Christofides, N. (1976), Análisis del peor caso de una nueva heurística para el problema del viajante de comercio , Informe técnico 388, Escuela de posgrado de administración industrial, Universidad Carnegie-Mellon, Pittsburgh.
- Hassin, R.; Rubinstein, S. (2000), "Mejores aproximaciones para el problema del viajante máximo", Information Processing Letters , 75 (4): 181– 186, CiteSeerX 10.1.1.35.7209 , doi : 10.1016/S0020-0190(00)00097-1 .
- Held, M.; Karp , RM (1962), "Un enfoque de programación dinámica para problemas de secuenciación", Journal of the Society for Industrial and Applied Mathematics , 10 (1): 196– 210, doi : 10.1137/0110015.
- Kaplan, H.; Lewenstein, L.; Shafrir, N.; Sviridenko, M. (2004), "Algoritmos de aproximación para el problema del viajante asimétrico mediante la descomposición de multigrafos regulares dirigidos", Actas del 44.º Simposio IEEE sobre Fundamentos de la Ciencia de la Computación , págs. 56-65 . .
- Karpinski, M.; Lampis, M.; Schmied, R. (2015), "Nuevos límites de inaproximabilidad para el TSP", Journal of Computer and System Sciences , 81 (8): 1665– 1677, arXiv : 1303.6437 , doi : 10.1016/j.jcss.2015.06.003
- Kosaraju, SR; Park, JK; Stein, C. (1994), "Giras largas y supercuerdas cortas"", Actas del 35.º Simposio Anual del IEEE sobre Fundamentos de la Ciencia de la Computación , IEEE Computer Society, págs. 166–177 .
- Larson, Richard C.; Odoni, Amedeo R. (1981), "6.4.7: Aplicaciones de modelos de red § Problemas de enrutamiento §§ TSP euclidiano" , Urban Operations Research , Prentice-Hall, ISBN 978-0-13-939447-8, OCLC 6331426 .
- Padberg, M.; Rinaldi, G. (1991), "Un algoritmo de ramificación y corte para la resolución de problemas simétricos a gran escala del viajante de comercio", SIAM Review , 33 (1): 60–100 , Bibcode : 1991SIAMR..33...60P , doi : 10.1137/1033004.
- Papadimitriou, Christos H. (1977), "El problema del viajante euclidiano es NP-completo", Theoretical Computer Science , 4 (3): 237– 244, Bibcode : 1977TComS...4..237P , doi : 10.1016/0304-3975(77)90012-3 , MR 0455550 .
- Papadimitriou, Christos H.; Yannakakis, Mihalis (1993), "El problema del viajante con distancias uno y dos", Mathematics of Operations Research , 18 : 1–11 , doi : 10.1287/moor.18.1.1.
- Schrijver, Alexander (2005). "Sobre la historia de la optimización combinatoria (hasta 1960)". En K. Aardal ; GL Nemhauser ; R. Weismantel (eds.). Manual de optimización discreta (PDF) . Ámsterdam: Elsevier. pp. 1–68 .
- Serdyukov, AI (1984), "Un algoritmo con una estimación para el problema del viajante de comercio del máximo"", Sistema Upravlyaemye , 25 : 80–86.
- Steinerberger, Stefan (2015), "Nuevos límites para la constante del viajante", Advances in Applied Probability , 47 (1): 27–36 , arXiv : 1311.6338 , doi : 10.1239/aap/1427814579.
- Woeginger, GJ (2003), "Algoritmos exactos para problemas NP-difíciles: una revisión", Optimización combinatoria: ¡Eureka, te encoges! Notas de clase en ciencias de la computación, vol. 2570 , Springer, pp . 185–207 .
Lecturas adicionales
- Adleman, Leonard (1994), "Cálculo molecular de soluciones a problemas combinatorios" (PDF) , Science , 266 (5187): 1021–4 , Bibcode : 1994Sci...266.1021A , CiteSeerX 10.1.1.54.2565 , doi : 10.1126/science.7973651 , PMID 7973651 , archivado del original (PDF) el 6 de febrero de 2005
- Babin, Gilbert; Deneault, Stéphanie; Laportey, Gilbert (2005), "Mejoras a la heurística Or-opt para el problema del viajante simétrico", The Journal of the Operational Research Society , Cahiers du GERAD, G-2005-02 (3), Montreal: Group for Research in Decision Analysis: 402–407 , CiteSeerX 10.1.1.89.9953 , JSTOR 4622707
- Cook, William (2012). En busca del viajante: Las matemáticas en los límites de la computación . Princeton University Press. ISBN 978-0-691-15270-7.
- Cook, William ; Espinoza, Daniel; Goycoolea, Marcos (2007), "Computing with domino-parity inequalities for the TSP", INFORMS Journal on Computing , 19 (3): 356–365 , doi : 10.1287/ijoc.1060.0204
- Cormen, Thomas H.; Leiserson , Charles E.; Rivest , Ronald L.; Stein , Clifford (31 de julio de 2009). «35.2: El problema del viajante» . Introducción a los algoritmos (2.ª ed.). MIT Press. págs. 1027–1033 . ISBN 978-0-262-03384-8.
- Dantzig, GB ; Fulkerson, R.; Johnson , SM (1954), "Solución de un problema del viajante a gran escala", Operations Research , 2 (4): 393–410 , doi : 10.1287/opre.2.4.393 , JSTOR 166695 , S2CID 311786
- Garey, Michael R.; Johnson, David S. (1979). "A2.3: ND22–24". Computers and Intractability: A Guide to the Theory of NP-completeness . WH Freeman. pp. 211–212 . ISBN 978-0-7167-1044-8.
- Goldberg, DE (1989), Algoritmos genéticos en búsqueda, optimización y aprendizaje automático , Reading: Addison-Wesley, Bibcode : 1989gaso.book.....G , ISBN 978-0-201-15767-3
- Gutin, G.; Yeo, A.; Zverovich, A. (15 de marzo de 2002). "El problema del viajante no debería ser codicioso: análisis de dominación de heurísticas de tipo codicioso para el TSP" . Matemáticas Aplicadas Discretas . 117 ( 1–3 ): 81–86 . doi : 10.1016/S0166-218X(01)00195-0 .
- Gutin, G.; Punnen, AP (18 de mayo de 2007). El problema del viajante y sus variaciones . Springer US. ISBN 978-0-387-44459-8.
- Johnson, DS ; McGeoch, LA (1997), "El problema del viajante: un estudio de caso en optimización local", en Aarts, EHL; Lenstra, JK (eds.), Búsqueda local en optimización combinatoria (PDF) , John Wiley and Sons Ltd., pp . 215–310
- Lawler, EL; Shmoys, DB; Kan, AHG Rinnooy; Lenstra, JK (1985). El problema del viajante . John Wiley & Sons, Incorporated. ISBN 978-0-471-90413-7.
- MacGregor, JN; Ormerod, T. (1996), "Rendimiento humano en el problema del viajante", Perception & Psychophysics , 58 (4): 527– 539, doi : 10.3758/BF03213088 , PMID 8934685
- Medvedev, Andrei; Lee, Michael; Butavicius, Marcus; Vickers, Douglas (1 de febrero de 2001). "Rendimiento humano en problemas del viajante presentados visualmente". Psychological Research . 65 (1): 34– 45. doi : 10.1007/s004260000031 . PMID 11505612 .
- Mitchell, JSB (1999), "Las subdivisiones de guillotina aproximan las subdivisiones poligonales: Un esquema de aproximación simple en tiempo polinomial para el TSP geométrico, k -MST y problemas relacionados", SIAM Journal on Computing , 28 (4): 1298–1309 , doi : 10.1137/S0097539796309764
- Rao, S.; Smith, W. (1998). "Aproximación de grafos geométricos mediante 'engranajes' y 'banyans'"". STOC '98: Actas del trigésimo simposio anual de la ACM sobre Teoría de la Computación . págs. 540–550 . CiteSeerX 10.1.1.51.8676 .
- Rosenkrantz, Daniel J.; Stearns, Richard E.; Lewis, Philip M. II (1977). "Análisis de varias heurísticas para el problema del viajante". SIAM Journal on Computing . 6 (5). SIAM (Sociedad de Matemáticas Industriales y Aplicadas): 563– 581. doi : 10.1137/0206041 .
- Walshaw, Chris (2000), Un enfoque multinivel para el problema del viajante , CMS Press
- Walshaw, Chris (2001), Un algoritmo multinivel de Lin-Kernighan-Helsgaun para el problema del viajante , CMS Press
Enlaces externos
- Problema del viajante en la Wayback Machine (archivado el 17 de diciembre de 2013) en la Universidad de Waterloo.
- TSPLIB, Ejemplos de instancias para el problema del viajante en la Universidad de Heidelberg
- Problema del viajante de comercio por Jon McLoone en el Proyecto de Demostraciones de Wolfram
- Herramienta de visualización del problema del viajante
- El problema del viajante
- problemas NP-completos
- problemas NP-difíciles
- Optimización combinatoria
- Algoritmos de grafos
- Problemas computacionales en la teoría de grafos
- Trayectorias y ciclos hamiltonianos
- Metáforas que se refieren a personas