पिकअप और डिलीवरी की जगहों पर यू-टर्न से बचें

डिफ़ॉल्ट रूप से, वाहन किसी भी दिशा से पिकअप या डिलीवरी की जगह पर पहुंच सकते हैं. इसके बाद, वे किसी भी दिशा में जा सकते हैं. कुछ मामलों में, इसकी वजह से वाहन को उस जगह पर यू-टर्न लेना पड़ता है जहां जाना है. हालांकि, वाहन के साइज़, उस जगह पर मौजूद ट्रैफ़िक साइन या ट्रैफ़िक की सामान्य स्थितियों की वजह से, ऐसा करना मुश्किल हो सकता है या मुमकिन नहीं हो सकता.

किसी पिकअप या डिलीवरी की जगह पर पहुंचने और वहां से निकलने के बीच वाहनों को दिशा बदलने से रोकने के लिए, इस जगह के लिए avoid_u_turns को सही पर सेट किया जा सकता है. इस सेटिंग के तहत, वाहन एक ही दिशा में आएगा और जाएगा. इससे उसे यू-टर्न लेने की ज़रूरत नहीं पड़ेगी. दोतरफ़ा सड़कों पर, सॉल्वर दोनों दिशाओं पर विचार करेगा और किसी एक को रास्ते के ऑप्टिमाइज़ेशन के हिस्से के तौर पर चुनेगा.

side_of_road को सही पर सेट करके, ऐसा रास्ता भी पाया जा सकता है जहां वाहन, वेपॉइंट के सबसे नज़दीकी सड़क के किनारे पर पहुंचता है और वहां से रवाना होता है. इस मामले में, वाहन के पहुंचने और जाने के बीच भी दिशा नहीं बदलती है. एक ही नतीजे को पाने के लिए, side_of_road और avoid_u_turns, दोनों को सही के तौर पर सेट किया जा सकता है. ज़्यादा जानकारी के लिए, अन्य सुविधाओं के साथ इंटरैक्शन लेख पढ़ें.

असल में, avoid_u_turns का इस्तेमाल तब किया जाना चाहिए, जब वेपॉइंट तक पहुंचने के लिए सड़क पार करना सुरक्षित हो. जब सड़क पार करने की सलाह न दी गई हो या सड़क पार करना मुमकिन न हो, तब side_of_road का इस्तेमाल करें.

उदाहरण: avoid_u_turns के साथ OptimizeTours का अनुरोध करना

OptimizeTours अनुरोध, REST या gRPC का इस्तेमाल करके किए जा सकते हैं.

अनुरोध करने से पहले, इन पैरामीटर को अपने एनवायरमेंट के हिसाब से सही वैल्यू से बदलें:

  • पक्का करें कि आपने ऐप्लिकेशन के लिए डिफ़ॉल्ट क्रेडेंशियल कॉन्फ़िगर किए हों. इसके लिए, OAuth का इस्तेमाल करना लेख में दिया गया तरीका अपनाएं.
  • PROJECT_NUMBER_OR_ID को अपने Cloud प्रोजेक्ट नंबर या आईडी पर सेट करें.

    नीचे दिया गया निर्देश, Route Optimization API को OptimizeTours अनुरोध भेजता है और सिंक्रोनस तरीके से जवाब पाता है.

    curl -X POST 'https://routeoptimization.googleapis.com/v1/projects/PROJECT_NUMBER_OR_ID:optimizeTours' \
    -H "Content-Type: application/json" \
    -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \
    --data @- <<EOM
    {
      "model": {
        "shipments": [
          {
            "pickups": [
              {
                "arrivalLocation": {
                  "latitude": 37.42506261000996,
                  "longitude": -122.09535511930135
                },
                "avoidUTurns": true
              }
            ],
            "deliveries": [
              {
                "arrivalLocation": {
                  "latitude": 37.42421503206021,
                  "longitude": -122.09526063135228
                },
                "avoidUTurns": true
              }
            ]
          }
        ],
        "vehicles": [
          {
            "travelMode": "DRIVING",
            "costPerKilometer": 1.0
          }
        ],
      }
    }
    EOM

अनुरोध पूरा होने के बाद, आपको जवाब मिलेगा.

अन्य सुविधाओं के साथ इंटरैक्शन

  • avoid_u_turns को side_of_road = true के साथ इस्तेमाल किया जा सकता है. इस मामले में, यू-टर्न से बचा जाता है. हालांकि, सॉल्वर ऐसा रास्ता चुनता है जिसमें वाहन, वेपॉइंट की सड़क के उसी तरफ़ होता है. यह सिर्फ़ side_of_road = true सेट करने जैसा होता है.
  • जब किसी विज़िट के अनुरोध के लिए avoid_u_turns = true होता है, तब जवाब में मौजूद ShipmentRoute.Visit में injected_solution_location_token फ़ील्ड सेट होता है. इसकी वैल्यू का सटीक मतलब, लागू करने से जुड़ी जानकारी है. हालांकि, यह उस सड़क के बारे में जानकारी को एन्कोड करता है जिसे सॉल्वर ने चुना है.
  • इनपुट अनुरोध के हिस्से के तौर पर ShipmentRoute.Visit का इस्तेमाल करने पर, अगर वह ShipmentRoute.Visit किसी ऐसे VisitRequest से मेल खाता है जिसमें avoid_u_turns = true मौजूद है, तो ShipmentRoute.Visit में, हल करने वाले व्यक्ति की ओर से पहले दिया गया injected_solution_location_token होना चाहिए.

सीमाएं

यू-टर्न से बचने की सुविधा, सबसे बेहतर तरीके से काम करती है. कुछ स्थितियों में, रास्ते में अब भी यू-टर्न हो सकते हैं:

  • avoid_u_turns सिर्फ़ उन यात्रा मोड के साथ काम करता है जो side_of_road के साथ काम करते हैं. खास तौर पर, यह WALKING यात्रा मोड के लिए काम नहीं करता.
  • avoid_u_turns का इस्तेमाल, पिकअप और डिलीवरी के लिए नहीं किया जा सकता. ऐसा तब होता है, जब पहुंचने और जाने की जगह एक नहीं होती.
  • जब पिकअप या डिलीवरी किसी ऐसी सड़क पर होती है जो आगे जाकर बंद हो जाती है, तो उस सड़क से बाहर निकलने के लिए यू-टर्न लेना ज़रूरी होता है.
  • इस सुविधा का मकसद, पिकअप और डिलीवरी की जगहों पर यू-टर्न से बचना है. रास्ते में पड़ने वाले पॉइंट के बीच यू-टर्न से बचा नहीं जाता.
  • किसी दूसरी सड़क पर बहुत तेज़ी से मुड़ने को यू-टर्न नहीं माना जाता. आम तौर पर, ऐसे रास्तों को नहीं चुना जाता.

इस सुविधा पर काम चल रहा है. इसलिए, इस दौरान कुछ और सीमाएं लागू होंगी. हमें उम्मीद है कि इस सुविधा के बेहतर होने के साथ-साथ, इन पाबंदियों को भी हटा दिया जाएगा.