Google Directions API

Lösung von TSPs mit der Google Directions API

Google bietet auch eine Möglichkeit, einfache TSPs für reale Standorte zu lösen, ohne OR-Tools herunterladen. Wenn Sie einen Google Directions API-Schlüssel haben, können Sie TSPs realer Standorte mit dem Directions API , wobei die Speicherorte in einer URL angegeben werden und die Antwort im JSON-Format zurückgegeben wird. Sie benötigen eine eigene kostenloser Directions API-Schlüssel für die Entwicklung oder einen Enterprise-Schlüssel für die kommerzielle Nutzung.

Hier ist ein Beispiel für eine URL, mit der Sie eine kurze Tour über die Weinherstellung finden können. Regionen in Südaustralien, beginnend in Adelaide. Wenn Sie das ausprobieren möchten, Ihrem Browser, ersetzen Sie API_KEY am Ende der URL durch Ihren Schlüssel.

https://maps.googleapis.com/maps/api/directions/json?origin=Adelaide,SA&destination=Adelaide,SA&waypoints=optimize:true|Barossa+Valley,SA|Clare,SA|Connawarra,SA|McLaren+Vale,SA&key=API_KEY

Das Ergebnis ist eine lange JSON-Antwort, die die Lösung beschreibt, Google Maps-Wegbeschreibung:

{
   "routes" : [
      {
         "bounds" : {
            "northeast" : {
               "lat" : -33.8347115,
               "lng" : 140.8547058
            },
            "southwest" : {
               "lat" : -37.3511758,
               "lng" : 138.4951576
            }
         },
         "copyrights" : "Map data ©2014 Google",
         "legs" : [
            {
               "distance" : {
                  "text" : "139 km",
                  "value" : 139119
               },
               "duration" : {
                  "text" : "1 hour 51 mins",
                  "value" : 6648
               },
               "end_address" : "Clare SA 5453, Australia",
               "end_location" : {
                  "lat" : -33.8333395,
                  "lng" : 138.6117283
               },
               "start_address" : "Adelaide SA, Australia",
               "start_location" : {
                  "lat" : -34.9285894,
                  "lng" : 138.5999429
               },
               "steps" : [
                  {
                     "distance" : {
                        "text" : "70 m",
                        "value" : 70
                     },
                     "duration" : {
                        "text" : "1 min",
                        "value" : 6
                     },
                     "end_location" : {
                        "lat" : -34.9285338,
                        "lng" : 138.6007031
                     },
                     "html_instructions" : "Head \u003cb\u003eeast\u003c/b\u003e on \u003cb\u003eReconciliation Plaza\u003c/b\u003e toward \u003cb\u003eVictoria Square\u003c/b\u003e",
...