रास्ते के प्लान का लाइफ़साइकल

इस पेज पर, रूट ऑप्टिमाइज़ेशन एपीआई का इस्तेमाल करके, रूट प्लान के लाइफ़-साइकल के बारे में बताया गया है. इसमें, रूटिंग की ज़रूरतों की पहचान करने से लेकर, आपके सिस्टम में इंटिग्रेट किए गए रूट प्लान तक की जानकारी शामिल है.

रूट प्लान के चरणों को फ़ॉलो करके, ये लक्ष्य हासिल किए जा सकते हैं:

  • अपने फ़्लीट के ऑपरेशन को मैप करना: अपने फ़्लीट, जटिल शर्तों, और कारोबार के लक्ष्यों को एपीआई के लिए कोड में बदलना.
  • अपने कारोबार के लिए रूट प्लान ऑप्टिमाइज़ करना: अपने रूट प्लान को बेहतर बनाने का तरीका समझना, ताकि यह आपके लक्ष्यों को पूरा कर सके और रोज़मर्रा के कामों को बेहतर बना सके.
  • प्रोडक्शन में डिप्लॉय करना: अपने रूट प्लान को रोज़मर्रा के कामों में शामिल करके लागू करना.

यहां दिए गए डायग्राम में, रूट प्लान के लाइफ़-साइकल की जानकारी दी गई है.

नीचे दिए गए टेक्स्ट में, रूट प्लान के लाइफ़साइकल का फ़्लो डायग्राम दिखाया गया है

रूट प्लान का लागू करने का चरण तब शुरू होता है, जब पहली बार एपीआई को इंटिग्रेट किया जाता है या जब आपके कारोबार की ज़रूरतें काफ़ी बदल जाती हैं. इसमें पहले से पांचवें चरण शामिल हैं.

रोज़मर्रा के कामों का चरण ज़्यादा आसान होता है. इसमें कम से कम बदलाव किए जाते हैं. इसमें दूसरे से चौथे चरण शामिल हैं.

रूट प्लान के चरण ये हैं:

  1. अपनी समस्या की पहचान करना: एपीआई का इस्तेमाल शुरू करने से पहले, अपने लक्ष्यों, संसाधनों, टास्क, और शर्तों की पहचान करना और उन्हें व्यवस्थित करना, ताकि आपको अपने ऑपरेशन की पूरी जानकारी मिल सके.
  2. अपने डेटा को मैप करना: अपने कारोबार की असल स्थिति को एपीआई पैरामीटर में बदलना, ताकि रूट प्लान से यह पता चले कि आपको अपने फ़्लीट को कैसे चलाना है.
  3. अनुरोध करना और रूट प्लान पाना: एपीआई में अपना डेटा डालकर, ऑप्टिमाइज़ किया गया रूट प्लान पाना.
  4. अपने रूट प्लान को बेहतर बनाना: अपने रूट प्लान की जांच करना और अपनी शर्तों और लक्ष्यों में बदलाव करके उसे बेहतर बनाना, ताकि यह पक्का किया जा सके कि यह आपकी सभी ज़रूरतों को पूरा करता है.
  5. रूट प्लान को इंटिग्रेट करना: कार्रवाई करने लायक नेविगेशन की सुविधा देने के लिए, रूट प्लान को अपने मौजूदा सिस्टम से कनेक्ट करना.

अपनी समस्या की पहचान करना

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

अपने संसाधनों और टास्क की पहचान करना

रूट प्लान की योजना बनाते समय, अपने संसाधनों और टास्क की पहचान करना ज़रूरी है. ये आपके वाहन और शिपमेंट होते हैं.

वाहन शिपमेंट
  • संख्या: आपके पास कितने वाहन हैं?
  • जगहें: वाहन कहां से शुरू और खत्म होते हैं?
  • समय: वाहनों के ड्राइवरों के काम करने के घंटे क्या हैं?
  • कपैसिटी: आपके वाहनों की सीमाएं क्या हैं?
  • लागत: अपने फ़्लीट को चलाने की लागत क्या है?
  • जगहें: पिकअप और डिलीवरी पॉइंट कहां हैं?
  • ज़रूरतें: पैकेज का वज़न या साइज़ क्या है?
  • शर्तें: क्या डिलीवरी के लिए कोई खास समय तय किया गया है?
  • सर्विस टाइम: ड्राइवर को पार्क करने और अनलोड करने में कितना समय लगता है?
  • ज़रूरतें: क्या शिपमेंट के लिए किसी खास तरह के वाहन या ड्राइवर की ज़रूरत है?

अपनी शर्तों की पहचान करना

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

शर्तों को आम तौर पर दो कैटगरी में बांटा जाता है:

कड़ी शर्तें सॉफ़्ट सीमाएं
ये ऐसी सीमाएं हैं जिनका उल्लंघन नहीं किया जा सकता. उदाहरण के लिए, कोई ट्रक अपनी ज़्यादा से ज़्यादा कपैसिटी से ज़्यादा वज़न नहीं ले जा सकता. साथ ही, कोई ड्राइवर किसी स्टोर के बंद होने के बाद पिक-अप नहीं कर सकता. ये ऐसी प्राथमिकताएं हैं जिनका ज़रूरत पड़ने पर उल्लंघन किया जा सकता है. हालांकि, इसके लिए आम तौर पर जुर्माना देना पड़ता है. उदाहरण के लिए, हो सकता है कि आप किसी ट्रक को सिर्फ़ 80% कपैसिटी तक लोड करना चाहें या तय समय से पहले डिलीवरी करना चाहें. हालांकि, बेहतर रूट पाने के लिए, इन सीमाओं से ज़्यादा काम करने में आपको कोई समस्या नहीं है.

आम तौर पर, ये शर्तें लागू होती हैं:

  • कपैसिटी की सीमाएं: किसी वाहन में ले जाए जा सकने वाले आइटम का ज़्यादा से ज़्यादा वज़न, वॉल्यूम या संख्या.
  • समय की सीमाएं: वे खास समय स्लॉट जब कोई जगह विज़िट के लिए खुली होती है या ड्राइवर की खास शिफ़्ट के घंटे.
  • लागत: किसी वाहन को चलाने या शिपमेंट को स्किप करने की लागत. एपीआई के मुख्य लक्ष्यों में से एक, लागत के हिसाब से फ़ायदेमंद रूट प्लान जनरेट करना है.
  • ड्राइवर के ब्रेक: काम के कुछ घंटे पूरे होने के बाद, ड्राइवर के आराम करने की अवधि. आम तौर पर, यह अवधि श्रम कानूनों के तहत ज़रूरी होती है.

अपने कारोबार के लक्ष्य तय करना

अपने संसाधनों और टास्क और उनकी सीमाओं के बारे में तय करने के बाद, अब यह तय करने का समय है कि आपके कारोबार के लिए कौनसी मेट्रिक सबसे ज़्यादा ज़रूरी हैं. ये लक्ष्य, शर्तों के साथ-साथ चलते हैं. साथ ही, ये तय करने में मदद करते हैं कि रूट प्लान करते समय, कौनसी चीज़ सबसे ज़्यादा ज़रूरी है.

यहां कारोबार के लक्ष्यों के कुछ उदाहरण दिए गए हैं:

गाड़ियों की संख्या दूरी समय लागत
क्या आपको इस्तेमाल किए जाने वाले वाहनों की संख्या कम करनी है या काम के दिन को पहले खत्म करने के लिए, अपने पूरे फ़्लीट का इस्तेमाल करना है? क्या आपको ईंधन बचाने के लिए सबसे छोटा रास्ता चाहिए या आपको तेज़ रूट पसंद है, जो हाइवे के इस्तेमाल की वजह से लंबा हो सकता है? क्या आपको काम के कुल घंटों को कम करना है या खास समय पर पहुंचने को प्राथमिकता देनी है, जिससे रूट पर लगने वाला समय बढ़ सकता है? क्या आपको मज़दूरी और ईंधन जैसे ऑपरेशनल खर्च कम करने हैं या तय समयसीमा को पूरा करने के लिए ज़्यादा लागत स्वीकार करनी है?

अपने डेटा को मैप करना

डेटा इकट्ठा करने के बाद, उसे एपीआई की प्रॉपर्टी के हिसाब से मैप करें. इससे ऑप्टिमाइज़र को सारी जानकारी मिलती है, ताकि वह ऐसा रूट प्लान दे सके जो आपके कारोबार की असल स्थिति को ध्यान में रखता हो.

संसाधनों, टास्क, शर्तों, और लक्ष्यों को मैप करने के लिए, अगली टेबल में दिए गए पैरामीटर का इस्तेमाल करें. इन पैरामीटर को 'अपनी समस्या की पहचान करना' सेक्शन में मैप किया गया है.

वैरिएबल मैपिंग

असल दुनिया का कॉन्सेप्ट एपीआई पैरामीटर ब्यौरा
ड्राइवर या वाहन model.vehicles[] आपके फ़्लीट में मौजूद किसी एक वाहन को दिखाता है.
डिपो की जगहें vehicles[].startWaypoint
vehicles[].endWaypoint
वह जगह जहां से वाहन अपना रूट शुरू और खत्म करता है.
आपके कारोबार के खुले होने का समय model.globalStartTime
model.globalEndTime
पूरे फ़्लीट के ऑपरेशन के लिए, सबसे पहले शुरू होने का समय और सबसे बाद में खत्म होने का समय.
टास्क या पैकेज model.shipments[] किसी काम को दिखाता है. यह pickup, delivery या दोनों हो सकता है.
टास्क की जगह pickups[].arrivalWaypoint
deliveries[].arrivalWaypoint
वह भौगोलिक जगह जहां काम किया जाता है.
सर्विस टाइम pickups[].duration
deliveries[].duration
वह समय जो किसी जगह पर टास्क पूरा करने में लगता है. उदाहरण के लिए, अनलोडिंग. इसमें यात्रा में लगने वाला समय शामिल नहीं है.

शर्तों को मैप करना

असल दुनिया की शर्त एपीआई पैरामीटर ब्यौरा
वाहन की कपैसिटी vehicles[].loadLimits वाहन की कपैसिटी के लिए, कड़ी या आसान सीमा तय करता है. अगर किसी शिपमेंट का loadDemand, बची हुई सीमा से ज़्यादा है, तो उसे असाइन नहीं किया जाता.
पैकेज का साइज़ shipments[].loadDemands शिपमेंट के लिए, वाहन की कपैसिटी का इस्तेमाल.
वाहन पर पाबंदी shipments[].allowedVehicleIndices किसी शिपमेंट पर पाबंदी लगाता है, ताकि उसे सिर्फ़ चुनिंदा वाहन या ड्राइवर ही पिक अप या डिलीवर कर सकें.
उपलब्ध घंटे shipments[].pickups[].timeWindows या shipments[].deliveries[].timeWindows किसी जगह पर जाने के लिए, उपलब्ध घंटे तय करता है. अगर कोई वाहन इस समयसीमा के अंदर नहीं पहुंच पाता है, तो शिपमेंट को स्किप कर दिया जाता है.
शिफ़्ट की अवधि की सीमा vehicles[].routeDurationLimit यह तय करता है कि कोई ड्राइवर कितने समय तक काम कर सकता है. उदाहरण के लिए, ज़्यादा से ज़्यादा आठ घंटे. यह सीमा, ग्लोबल एंड टाइम पर लागू नहीं होती.
ड्राइवर के ब्रेक vehicles[].breakRule आराम से जुड़े खास नियम लागू करता है. जैसे, काम के कुछ घंटे पूरे होने के बाद, ब्रेक लेना ज़रूरी है.
सड़कों पर पाबंदियों की जानकारी vehicles[].travelMode यात्रा का मोड तय करता है. उदाहरण के लिए, DRIVE या BICYCLE. इससे रूट, कानूनी सड़कों तक सीमित हो जाता है. साथ ही, यात्रा में लगने वाले समय का हिसाब लगाने के लिए, इस्तेमाल की जाने वाली स्पीड तय होती है.

लक्ष्यों को मैप करना

असल दुनिया का लक्ष्य एपीआई पैरामीटर ब्यौरा
फ़्लीट के साइज़ को कम करना vehicles[].fixedCost किसी वाहन का इस्तेमाल करने के लिए, एक बार लगने वाली लागत लागू करता है. ज़्यादा फ़िक्स्ड लागत की वजह से, रूट में कुल दूरी या काम के समय को बढ़ाने के बजाय, कम वाहनों का इस्तेमाल करने को प्राथमिकता दी जाती है.
दूरी कम करना vehicles[].costPerKilometer हर किलोमीटर की यात्रा के लिए, लागत लागू करता है. ईंधन और वाहन के घिसने से बचाने के लिए, छोटे रूट को प्राथमिकता देता है.
कुल समय कम करना vehicles[].costPerHour वाहन के चालू रहने के हर घंटे के लिए, लागत लागू करता है. इसमें यात्रा और इंतज़ार का समय भी शामिल है. जल्द से जल्द काम पूरा करने को प्राथमिकता देता है.
ड्राइविंग का समय कम करना vehicles[].costPerTraveledHour खास तौर पर, यात्रा में लगने वाले समय के लिए लागत लागू करता है. इससे ट्रैफ़िक में फंसने (ज़्यादा लागत) और किसी स्टॉप पर इंतज़ार करने(संभवतः कम लागत) के बीच अंतर किया जाता है.
कुछ टास्क को प्राथमिकता देना shipments[].penaltyCost अगर कोई खास शिपमेंट स्किप किया जाता है, तो लागत लागू करता है. इसे ज़्यादा पर सेट करने से, ज़रूरी टास्क को वैकल्पिक टास्क के मुकाबले प्राथमिकता मिलती है.

अनुरोध करना और जवाब पाना

रूट प्लान जनरेट करने के लिए, रूट ऑप्टिमाइज़ेशन एपीआई का इस्तेमाल करने में ये चरण शामिल हैं:

  1. अपना एनवायरमेंट कॉन्फ़िगर करना: अपना Google क्लाउड प्रोजेक्ट सेट अप करना, एपीआई की सुविधा चालू करना, और पुष्टि करने की सुविधा कॉन्फ़िगर करना. निर्देशों के लिए, शुरू करना लेख पढ़ें. आपको यह चरण सिर्फ़ एक बार पूरा करना होगा.
  2. अनुरोध भेजना: पिछले सेक्शन में तय की गई डेटा मैपिंग का इस्तेमाल करके, अनुरोध का मुख्य हिस्सा बनाना. एंडपॉइंट, हेडर, और अनुरोध को फ़ॉर्मैट करने के बारे में जानकारी के लिए, एपीआई अनुरोध करना लेख पढ़ें.
  3. जवाब को समझना: एपीआई से जवाब मिलने के बाद, रूट प्लान और हर पैरामीटर का मतलब समझना. जवाब को समझना लेख पढ़ें.

अपने रूट प्लान को बेहतर बनाना

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

लक्ष्यों और शर्तों में बदलाव करना

अगर जनरेट किया गया रूट प्लान आपकी ज़रूरतों को पूरा नहीं करता है, तो अलग-अलग नतीजे पाने के लिए, कुछ पैरामीटर में बदलाव किया जा सकता है. पैरामीटर को सख्त या आसान बनाने से, रूट प्लान में टकराव वाले लक्ष्यों को हल करने का तरीका बदल जाता है. साथ ही, पैरामीटर को आसान बनाने से, उन पैरामीटर का पता लगाने में मदद मिलती है जिनकी वजह से आपके रूट प्लान में गड़बड़ियां आ रही हैं.

यहां दी गई टेबल में, रूटिंग से जुड़ी आम समस्याओं और उन्हें हल करने के लिए, बदले जा सकने वाले पैरामीटर की जानकारी दी गई है.

स्थिति पैरामीटर बदलाव ब्यौरा
कोई ज़रूरी शिपमेंट स्किप कर दिया गया है shipments[].penaltyCost इसकी वैल्यू बढ़ाएं या अन्य शिपमेंट के लिए, पेनल्टी की लागत जोड़ें अगर शिपमेंट वैकल्पिक है, तो उसे प्राथमिकता देने के लिए, उसकी पेनल्टी की लागत बढ़ाएं. अगर शिपमेंट ज़रूरी है (इसकी कोई पेनल्टी की लागत नहीं है), तो अन्य, कम ज़रूरी शिपमेंट के लिए, पेनल्टी की लागत जोड़ें. इससे ये शिपमेंट वैकल्पिक हो जाते हैं. साथ ही, ज़रूरी शिपमेंट के लिए, वाहन का समय और कपैसिटी खाली हो जाती है.
समय की वजह से शिपमेंट स्किप कर दिया गया है softStartTime / softEndTime आसान समय की सीमाएं जोड़ें कड़ी समय की सीमाओं की वजह से, वे टास्क ड्रॉप हो जाते हैं जो एक मिनट भी देर से पूरे होते हैं. आसान समय की सीमाओं की वजह से, ड्राइवर असाइनमेंट पूरा न कर पाने के बजाय, "लागत" चुकाकर थोड़ी देर से पहुंच सकता है.
वज़न की वजह से शिपमेंट स्किप कर दिया गया है loadLimits[].softMaxLoad और costPerUnitAbove आसान लोड की ज़रूरतें जोड़ें इससे कोई वाहन, पैकेज को पीछे छोड़ने के बजाय, अपनी तय कपैसिटी से थोड़ा ज़्यादा लोड ले जा सकता है. हालांकि, इसके लिए पेनल्टी देनी पड़ती है.
फ़्लीट के ज़्यादा लोड होने की वजह से शिपमेंट स्किप कर दिया गया है model.vehicles[] या shipments[].timeWindows वाहन जोड़ें या समय की सीमाओं को आसान बनाएं अगर मौजूदा फ़्लीट के लिए बहुत ज़्यादा शिपमेंट हैं, तो ज़्यादा वाहन जोड़ें. खास तौर पर, पीक घंटों के दौरान ऐसा करें. इसके अलावा, काम के लोड को बांटने के लिए, डिलीवरी की समयसीमा बढ़ाएं.
रूट बहुत लंबे या काम के नहीं हैं vehicles[].costPerKilometer / costPerHour लागत जोड़ें या उनकी वैल्यू बढ़ाएं इससे एपीआई को पता चलता है कि यात्रा करना महंगा है. इसलिए, यह फ़्लीट के लिए छोटे रूट बनाने के लिए, दूर और अलग-थलग स्टॉप को ड्रॉप करने के लिए प्रोत्साहित होता है.
ड्राइवर की शिफ़्ट बहुत लंबी हैं vehicles[].routeDurationLimit या model.vehicles[] अवधि की सीमाएं जोड़ें या वाहन और सीमाएं जोड़ें यह ड्राइवर के सड़क पर बिताए कुल समय पर, कड़ी सीमा लागू करता है. उदाहरण के लिए, आठ घंटे. सिर्फ़ वाहन जोड़ने से रूट छोटे नहीं होंगे. इसके लिए, आपको अवधि की सीमाएं भी लागू करनी होंगी, ताकि सॉल्वर को बड़े फ़्लीट में काम के लोड को बांटने के लिए मजबूर किया जा सके.

रूट प्लान अपडेट करना

आपको अक्सर रूट प्लान अपडेट करना पड़ता है. हालांकि, इसकी बुनियादी जानकारी वही रहती है. जैसे, किसी चालू ड्राइवर के शेड्यूल में पिकअप जोड़ना. इसके लिए, इंजेक्शन पैरामीटर का इस्तेमाल करें. ये पैरामीटर, एपीआई को आपके पिछले समाधान के आधार पर शुरुआत देते हैं. इससे एपीआई, मौजूदा प्लान में बदलाव कर पाता है. साथ ही, उसे नया प्लान बनाने की ज़रूरत नहीं पड़ती.

इंजेक्शन पैरामीटर की मदद से, रूट प्लान को अपडेट करने के अलग-अलग तरीके यहां दिए गए हैं:

  • अपने नए अनुरोध के injectedFirstSolutionRoutes फ़ील्ड में, पिछले जवाब से रूट पास करें. इससे ऑप्टिमाइज़ेशन खोज की स्पीड बढ़ जाती है. साथ ही, रोज़मर्रा के काम शुरू होने से पहले, दोबारा प्लान करने में मदद मिलती है. जैसे, आखिरी मिनट में जोड़े गए शिपमेंट को इंटिग्रेट करना.
  • injectedSolutionConstraint फ़ील्ड का इस्तेमाल करके, बदलाव की डिग्री को कंट्रोल करें. यह तब काम आता है, जब ऑपरेशन पहले से ही चल रहे हों. इससे ड्राइवर के मौजूदा क्रम को बनाए रखने या प्लान के उन हिस्सों को ठीक करने में मदद मिलती है जिन्हें पहले ही पूरा कर लिया गया है.
  • interpretInjectedSolutionsUsingLabels को true पर सेट करके, यह पक्का करें कि अपडेट किया गया रूट सही वाहन को असाइन किया गया हो. यह एक्सपेरिमेंट में तब काम आता है, जब शिपमेंट और वाहन जोड़े या हटाए जाते हैं. ऐसा इसलिए, क्योंकि यह इंडेक्स के बजाय लेबल का इस्तेमाल करके रूट को मैच करता है. इसके लिए, वाहन और शिपमेंट के सभी लेबल यूनीक होने चाहिए.

अपना रूट प्लान इंटिग्रेट करना

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

विज़ुअलाइज़ेशन

फ़्लीट मैनेजर को आपके रूट प्लान की पुष्टि करने और उसकी निगरानी करने की अनुमति देने के लिए, अपने रूट प्लान को इन तरीकों से विज़ुअलाइज़ किया जा सकता है:

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

  • बिना कोड के एक्सप्लोर करना: ओपन सोर्स रूट ऑप्टिमाइज़ेशन ऐप्लिकेशन का इस्तेमाल करके, यह देखा जा सकता है कि एपीआई, आपके डेटा को मैप पर असल पाथ में कैसे बदलता है. यह वेब ऐप्लिकेशन, एक एक्सप्लोरेटरी टूल के तौर पर काम करता है. इसकी मदद से, कोई भी कोड लिखे बिना, स्थितियों को बनाया जा सकता है, शर्तों के पैरामीटर को ट्यून किया जा सकता है, और रूट प्लान को विज़ुअली रेंडर किया जा सकता है.
  • विज़िट का क्रम दिखाना: अपने सिस्टम में ऑप्टिमाइज़ेशन और डिस्पैच प्लान का आकलन करने के लिए, विज़िट के क्रम को मैप पर नंबर वाले पॉइंट के तौर पर दिखाया जा सकता है. इसके लिए, एपीआई के जवाब के हर रूट में मौजूद visits कलेक्शन ढूंढें. इस कलेक्शन में मौजूद आइटम, उसी क्रम में होते हैं जिस क्रम में ड्राइवर को उन्हें पूरा करना चाहिए. इस सूची में दोहराव किया जा सकता है. साथ ही, हर स्टॉप के लिए जगह के निर्देशांक पाने के लिए, shipmentIndex का इस्तेमाल किया जा सकता है. इसके अलावा, सूची में मौजूद क्रम के आधार पर, मैप पर नंबर वाले मार्कर रेंडर करने के लिए, अपनी मैपिंग लाइब्रेरी का इस्तेमाल किया जा सकता है.
  • असल रूट बनाना: ऑप्टिमाइज़र ने किसी खास क्रम को क्यों चुना, यह समझने के लिए, मैप पर प्लान किए गए असल पाथ को विज़ुअलाइज़ किया जा सकता है. यह पॉलीलाइन, प्लान करने और आकलन करने के लिए तय किए गए पाथ को दिखाती है. यह ड्राइवर के रीयल-टाइम रूट को नहीं दिखाती. हर रूट के लिए encodedPolyline फ़ील्ड पाने के लिए, अपने अनुरोध में populatePolylines: true सेट करें. इसके बाद, Maps JavaScript API के google.maps.geometry.encoding.decodePath() तरीके का इस्तेमाल करके, इसे डिकोड करें.

ड्राइवरों को डिस्पैच करना

Navigation SDK का इस्तेमाल करके, मोड़-दर-मोड़ निर्देश देने की सुविधा को ड्राइवर ऐप्लिकेशन में इंटिग्रेट किया जा सकता है. इसके अलावा, Google Maps के उपभोक्ता ऐप्लिकेशन के डीप लिंक दिए जा सकते हैं.

  • Navigation SDK: अगर आपके पास ड्राइवर के लिए कोई कस्टम ऐप्लिकेशन है, तो बारी-बारी से निर्देश देने की सुविधा के लिए, Android या iOS के लिए Navigation SDK को ऐप्लिकेशन में इंटिग्रेट किया जा सकता है. एपीआई से मिली जानकारी से टास्क की जानकारी को अपने सिस्टम में इंटिग्रेट किया जा सकता है. साथ ही, नेविगेशन के लिए एसडीके का इस्तेमाल किया जा सकता है. एपीआई से मिली जानकारी से रूट को एसडीके में पास करने के लिए, अपने अनुरोध में populateTransitionPolylines: true सेट करें. इससे जवाब में हर ट्रांज़िशन के लिए,routeToken जनरेट होता है.
  • Fleet Engine: फ़्लीट मैनेजमेंट के लिए, एपीआई से जनरेट किए गए रूट प्लान को Fleet Engine में इंपोर्ट किया जा सकता है, ताकि रीयल टाइम में रूट के पूरा होने की निगरानी की जा सके. एपीआई, आकलन के लिए तय किए गए पाथ की पॉलीलाइन उपलब्ध कराता है. वहीं, Fleet Engine, विज़िट के प्लान किए गए क्रम को रीयल टाइम में वाहन की ट्रैकिंग के साथ जोड़ता है.