Y a-t-il un moyen d'utiliser l'API Google Maps pour retrouver un itinéraire "optimisé" en fonction d'un ensemble de waypoints (en d'autres termes, une solution "assez bonne" au problème du voyageur de commerce)? ou renvoie-t-il toujours la route avec les points dans l'ordre spécifié?Acheminement optimal des cartes avec Google Maps
Répondre
Il leur donne toujours dans l'ordre. Donc, je pense que vous devez trouver la distance (ou le temps) entre chaque paire de points, un par un, puis résoudre vous-même le problème du vendeur itinérant. Vous pourriez peut-être convaincre Google Maps d'ajouter cette fonctionnalité. Je suppose que ce qui constitue une solution «assez bonne» dépend de ce que vous faites et à quelle vitesse il doit être.
votre réponse ne corrige pas maintenant. Google prend désormais en charge le problème de TSP. La version gratuite de google map comprend le début, la fin et 8 points intermédiaires. (Totalement 10 points) J'espère que vous éditer à nouveau pour la référence de l'utilisateur plus tard :) – hqt
Dans un problème typique de TSP, l'hypothèse est que l'on peut voyager directement entre deux points quelconques. Pour les routes de surface, ce n'est jamais le cas. Lorsque Google calcule un itinéraire entre deux points, il effectue une optimisation heuristique de l'arbre traversant et trouve généralement un chemin relativement proche de l'optimal. Pour calculer une route TSP, il faut d'abord demander à Google de calculer la distance par paire entre chaque nœud dans le graphique. Je pense que cela nécessite n * (n-1)/2 calcs. On pourrait alors prendre ces distances et effectuer une optimisation TSP sur eux.
OpenStreetMaps.org a une application Java WebStart qui peut faire ce que vous voulez. Bien sûr, les calculs sont effectués côté client. Le projet est open source et peut valoir le coup d'oeil. Essayez-vous de trouver un chemin optimal en ligne droite entre les emplacements, ou l'itinéraire de conduite optimal? Si vous voulez juste commander les points, si vous pouvez obtenir les coordonnées GPS, cela devient un problème très facile.
Comment obtenez-vous le chemin "assez proche du chemin optimal" de l'API? Je peux seulement récupérer des points dans l'ordre où je les ai inscrits. – Soldarnal
Google ne commandera pas les points. Le chemin optimal que Google calcule est la distance entre les deux points. Combien de voies y a-t-il entre New York et la Californie? Près de l'infini. Google vous trouvera une bonne route, probablement proche de l'optimum, mais il se peut qu'il y ait une route plus courte. – brianegge
Juste trouvé http://gebweb.net/optimap/ Il a l'air agréable et facile. Version en ligne en utilisant google maps.
Wow site incroyable et heureux qu'il a été en ligne si longtemps-ce sera d'une grande utilité à un de mes amis !!! – DPSSpatial
Il existe une option dans Google Maps API DirectionsRequest appelée optimizeWaypoints, qui devrait faire ce que vous voulez. Cela ne peut toutefois gérer que jusqu'à 8 waypoints. Il est également possible d'utiliser une bibliothèque open source (licence MIT) que vous pouvez utiliser avec l'API Google Maps pour obtenir un itinéraire optimal (jusqu'à 15 emplacements) ou très proche de l'optimal (jusqu'à 100 emplacements).
Voir http://code.google.com/p/google-maps-tsp-solver/
Vous pouvez voir la bibliothèque en action à www.optimap.net
- 1. comment déployer des cartes dynamiques sans déployer google maps?
- 2. django, google intégration des cartes
- 3. Ajouter un calque Google "Mes cartes" à l'API JavaScript Google Maps
- 4. Google Maps Problème avec Zend Framework
- 5. google maps vue par satellite
- 6. Comment utiliser BOOST_FOREACH avec deux cartes std :: maps?
- 7. Google Maps Street View
- 8. Problème avec asp.net mvc et google maps
- 9. Quelle API Maps autres que Google utilisez-vous avec GWT?
- 10. Recherche de proximité avec Google maps
- 11. Utilisation de l'API google maps avec des domaines variés
- 12. google maps infos trafic
- 13. Afficher Google Maps à l'aide d'un UIWebView avec zoom
- 14. Google Maps Bubble Templates
- 15. Marqueurs dans google maps
- 16. Aide avec google maps lien pour Iphone
- 17. Google Maps Superpositions
- 18. Meilleures pratiques Google Maps?
- 19. Java et Google Maps
- 20. Java: Google Maps alternative
- 21. API Google Maps: pouvez-vous explicitement qualifier des parties d'adresse?
- 22. Personnaliser la fenêtre d'information de Google Maps?
- 23. Statique Google Maps Icônes personnalisées
- 24. Google Maps JQuery Plugin Problème
- 25. API Google Maps et IE6
- 26. Les cartes Google sont centrées autour des géo-locs et effectuent un zoom avant approprié
- 27. directions Google Maps format texte
- 28. JavaScript lib pour google maps ou live maps
- 29. Construire vaste application google maps
- 30. Google maps rechercher un emplacement
Il y a toute une discussion sur cette idée sur Slashdot: http://ask.slashdot.org/article.pl?sid=08/ 01/09/2311215 – brianegge