Como se ha señalado en los comentarios, se trata del clásico problema del viajante de comercio.
Es matemáticamente difícil de resolver. Siempre se puede hacer fuerza bruta probando todas las rutas posibles, pero el número de permutaciones aumenta con el factorial del número de ciudades, por lo que se vuelve difícil de manejar muy rápidamente.
Dicho esto, para 5-20 ciudades, incluso algo tan simple como Microsoft Excel puede resolver esto bastante bien. He aquí un ejemplo: https://www.youtube.com/watch?v=-E3rSoClgMI sobre cómo hacerlo.
La entrada del algoritmo es la matriz de distancia. Puede utilizar la distancia o el tiempo, cualquiera de los dos funcionaría. Es necesario obtenerlas manualmente de Google Maps o utilizar una de las APIs existentes. Para 10 ciudades, son 45 números que necesitas sacar de Google Maps. Supongo que depende de ti decidir si vale la pena el esfuerzo o no.
Hice una simulación de 13 ciudades y me llevó menos de un minuto en mi portátil. (fuente https://developers.google.com/optimization/routing/tsp ).
Para algo más grande probablemente necesites un algoritmo más avanzado y un lenguaje de programación decente (como Python o Matlab/Octave). Véase, por ejemplo: https://www.youtube.com/watch?v=c5395m-nVz4
Aquí están los resultados: Puedes cubrir 13 ciudades principales de los EE.UU. en 7386 millas.
9 votos
es.wikipedia.org/wiki/Problema del vendedor ambulante ¿cómo de grande es n?
0 votos
@jcaron gracias, sí que es un TSP, n está entre 5 y 20 dependiendo del temario.
0 votos
Estaría encantado de recibir alguna opinión de los que votan a la baja.
3 votos
En caso de que te sientas inclinado a hacer algo de codificación, Google tiene soporte para eso en su Direcciones API . Consulte los documentos de la
optimize:true
parámetro. Sin embargo, el servicio no es gratuito, pero Google concede algunos créditos gratuitos cada mes aproximadamente.0 votos
¡@sourcream gracias, gran hallazgo!
5 votos
Veo que hay 3 votaciones ajustadas con el motivo " ... la construcción de itinerarios de viajes y excursiones (incluyendo la programación y el presupuesto) están fuera de lugar ". Como sólo falta un voto para que se cierre, quería señalar que el autor de la pregunta no está pidiendo un itinerario, sino una herramienta que pueda crear un itinerario para ellos dadas algunas restricciones. Creo que pedir herramientas en lugar de resultados es encomiable y no entra dentro del motivo de cierre de la votación.
0 votos
@SaaruLindestøkke estuvo de acuerdo travel.meta.stackexchange.com/a/8199/1810 Por ejemplo, el mismo problema con 4 votantes cercanos que no entienden WANTA en travel.stackexchange.com/q/174315/1810