रास्ते के स्टॉप का क्रम ऑप्टिमाइज़ करना

डिफ़ॉल्ट रूप से, Routes API Compute Routes तरीका, एक से ज़्यादा स्टॉप से होकर किसी रूट की गणना करता है, जिसे स्टॉपओवर वेपॉइंट कहा जाता है. आपकी ओर से उन्हें दिए जाने वाले ऑर्डर का क्रम तय करती हैं.

Routes API की मदद से, दिए गए रास्ते को ऑप्टिमाइज़ किया जा सकता है. इसके लिए, बस स्टॉप को ज़्यादा असरदार क्रम में फिर से व्यवस्थित करें. वेपॉइंट ऑप्टिमाइज़ेशन, यात्रा के समय को ऑप्टिमाइज़ करता है. हालांकि, यह यह तय करते समय कि कौनसा रास्ता सबसे बेहतर है, दूरी और मोड़ की संख्या जैसे अन्य फ़ैक्टर भी ध्यान में रखता है.

वेपॉइंट ऑप्टिमाइज़ करने के लिए

  1. पक्का करें कि रास्ते के किसी भी वेपॉइंट में via को true पर सेट न किया गया हो उदाहरण: {"address": "Clare,SA", "via": true}. बीच के रास्ते के बारे में ज़्यादा जानकारी के लिए, बीच के रास्ते की जानकारी दें लेख पढ़ें.

  2. पक्का करें कि routing_preference को TRAFFIC_AWARE_OPTIMAL पर सेट न किया गया हो.

  3. optimize_waypoint_order को true पर सेट करें. उदाहरण के लिए:

    "optimizeWaypointOrder": "true",
  4. फ़ील्ड में routes.optimizedIntermediateWaypointIndex फ़ील्ड के बारे में बताएं मास्क:

    REST

    -H X-Goog-FieldMask: routes.optimizedIntermediateWaypointIndex

    RPC

    const (fieldMask = "routes.optimizedIntermediateWaypointIndex")

वेपॉइंट ऑर्डर को ऑप्टिमाइज़ करने का तरीका जानें

Routes API, किसी रास्ते में मौजूद वेपॉइंट के क्रम को ऑप्टिमाइज़ करने का तरीका यहां बताया गया है:

  1. अनुरोध में दिए गए क्रम के आधार पर, वे रास्ते अपने-आप इंडेक्स हो जाते हैं. यह क्रम 0 से शुरू होता है.

  2. इसके इंडेक्स नंबर का इस्तेमाल करके, वेपॉइंट के क्रम को ऑप्टिमाइज़ करता है अनुरोध में वेपॉइंट को असाइन किया जाता है.

  3. routes.optimizedIntermediateWaypointIndex में, routes ऑब्जेक्ट के waypoint_order फ़ील्ड में, ऑप्टिमाइज़ किए गए वेपॉइंट का क्रम दिखाता है.

उदाहरण

इस अनुरोध में, दक्षिण ऑस्ट्रेलिया के एडिलेड से, दक्षिण ऑस्ट्रेलिया के हर मुख्य वाइन क्षेत्र तक के रास्ते को ऑप्टिमाइज़ करने के लिए कहा गया है. इसके बाद, एडिलेड लौटने के लिए भी रास्ते को ऑप्टिमाइज़ करने के लिए कहा गया है.

curl -X POST -H 'content-type: application/json' -d ' {
  "origin": {
    "address": "Adelaide,SA"
  },
  "destination": {
    "address": "Adelaide,SA"
  },
  "intermediates": [
    {"address": "Barossa+Valley,SA"},
    {"address": "Clare,SA"},
    {"address": "Coonawarra,SA"},
    {"address": "McLaren+Vale,SA"}
  ],
  "travelMode": "DRIVE",
  "optimizeWaypointOrder": "true"
  }' \
-H 'Content-Type: application/json' \
-H 'X-Goog-Api-Key: YOUR_API_KEY' \
-H 'X-Goog-FieldMask: routes,geocodingResults.intermediates.intermediateWaypointRequestIndex' \
'https://routes.googleapis.com/directions/v2:computeRoutes'

रूट एपीआई, इसमें दिए गए इंटरमीडिएट वेपॉइंट को इंडेक्स करता है अनुरोध की तारीख 0 से शुरू. उदाहरण के लिए:

0    {"address": "Barossa+Valley,SA"},
1    {"address": "Clare,SA"},
2    {"address": "Coonawarrav,SA"},
3    {"address": "McLaren+Vale,SA"}

इसके बाद, सेवा, अनुरोध में दिए गए चार वेपॉइंट के इंडेक्स नंबर का इस्तेमाल करके, ऑप्टिमाइज़ किया गया क्रम दिखाती है:

"optimizedIntermediateWaypointIndex": [
                3,
                2,
                0,
                1
            ]