Route Optimization API का मुख्य मकसद, कम लागत वाले रास्ते ढूंढना है. इसलिए, लागत मॉडल, रूट ऑप्टिमाइज़ेशन का मुख्य आधार है.
लागत मॉडल, प्रॉपर्टी का एक सेट है. इसमें ग्लोबल, वाहन, और शिपमेंट की लागत के बारे में बताया जाता है.
लागत मॉडल की प्रॉपर्टी, ऑप्टिमाइज़ेशन के इन लक्ष्यों के लिए काम करती हैं:
- वाहनों और रास्तों को बेहतर तरीके से असाइन करना
- पिकअप और डिलीवरी के लिए, लागत के हिसाब से बेहतर समय तय करना
- ज़रूरी शिपमेंट को प्राथमिकता देना
स्ट्रक्चर
जैसा कि डायग्राम में दिखाया गया है, लागत मॉडल की प्रॉपर्टी को इस तरह से व्यवस्थित किया जाता है:
ShipmentमेंpenaltyCostप्रॉपर्टी शामिल होती है.Vehicleमें ये प्रॉपर्टी शामिल होती हैं:
इस दस्तावेज़ में, लागत मॉडल के सिर्फ़ ज़रूरी पैरामीटर हाइलाइट किए गए हैं. लागत के सभी पैरामीटर देखने के लिए, रेफ़रंस दस्तावेज़ देखें.
Essentials की चेकलिस्ट
यहां दी गई चेकलिस्ट में, ज़रूरी जानकारी के बारे में बताया गया है. इससे लागत से जुड़ी संभावित गलतियों से बचा जा सकता है. इस सूची की मदद से, अपने अनुरोध की पुष्टि की जा सकती है और जवाब से जुड़ी समस्याओं को हल किया जा सकता है.
प्रॉपर्टी
यहां दी गई टेबल में, लागत मॉडल की प्रॉपर्टी के बारे में बताया गया है.
| Parent | प्रॉपर्टी का नाम | प्रॉपर्टी किस तरह की है | लागत प्रति | प्रॉपर्टी की जानकारी |
|---|---|---|---|---|
Shipment |
penaltyCost |
संख्या | शिपमेंट छोड़ना | शिपमेंट छोड़ने पर लगने वाली लागत. एपीआई, किसी शिपमेंट को तब छोड़ता है, जब उसे पूरा करने की लागत, उसकी पेनल्टी की लागत से ज़्यादा हो जाती है.
|
Vehicle |
fixedCost |
संख्या | शिपमेंट | अगर किसी शिपमेंट को हैंडल करने के लिए इस वाहन का इस्तेमाल किया जाता है, तो तय लागत लागू होती है. |
costPerHour |
संख्या | घंटा | किसी वाहन को एक घंटे तक चलाने की लागत. इसमें ट्रांज़िट, इंतज़ार, विज़िट, और ब्रेक का समय शामिल है. इस लागत के बढ़ने पर, ऑप्टिमाइज़र ऐसे रास्ते ढूंढने की कोशिश करता है जिनमें कम समय लगता हो. हालांकि, ये रास्ते सबसे छोटे नहीं हो सकते हैं. यह प्रॉपर्टी, हर वाहन के लिए लागत का एक असरदार स्टैंडअलोन विकल्प हो सकती है. इसकी वजह यह है कि यह आसान है और इसमें पूरी जानकारी शामिल होती है. |
|
costPerKilometer |
संख्या | किलोमीटर | वाहन से हर किलोमीटर की दूरी तय करने पर लगने वाली लागत . जैसे, ईंधन की लागत और वाहन के रखरखाव की लागत. | |
costPerTraveledHour |
संख्या | घंटा | **किसी वाहन को एक घंटे तक चलाने की लागत** . इसमें सिर्फ़ ट्रांज़िट का समय शामिल है. इसमें इंतज़ार, विज़िट, और ब्रेक का समय शामिल नहीं है. इससे, कम दूरी वाले रास्तों के बजाय, कम समय में पहुंचने वाले रास्तों को प्राथमिकता मिलती है. |
उदाहरण
इस सेक्शन में, तीन तरह के उदाहरण दिए गए हैं:
- कोड सैंपल . इनमें लागत मॉडल की प्रॉपर्टी के स्ट्रक्चर के बारे में बताया गया है.
- उदाहरण के तौर पर एक स्थिति . इसमें बताया गया है कि कारोबार का लक्ष्य पाने के लिए, लागत मॉडल की प्रॉपर्टी का इस्तेमाल कैसे किया जा सकता है.
- अनुरोध का एक उदाहरण . इसमें, उदाहरण के तौर पर दी गई स्थिति में सेट की गई वैल्यू शामिल हैं.
कोड सैंपल
यहां दिए गए कोड सैंपल में, लागत मॉडल की प्रॉपर्टी का स्ट्रक्चर दिखाया गया है
Shipment:
{ "model": { "shipments": [ ... { "penaltyCost": PENALTY_COST } ], "vehicles": [ ... ] } }
यहां दिए गए कोड सैंपल में, लागत मॉडल की प्रॉपर्टी का स्ट्रक्चर दिखाया गया है
Vehicle:
{ "model": { "shipments": [ ... ], "vehicles": [ ... { "fixedCost": FIXED_COST, "costPerKilometer": KILOMETER_COST, "costPerHour": HOUR_COST, "costPerTraveledHour": TRAVELED_HOUR_COST } ] } }
उदाहरण के तौर पर
इस सेक्शन में, एक ऐसी स्थिति के बारे में बताया गया है जिसमें आपका डॉगी डेकेयर का कारोबार है. आप उस ट्रक के लिए एक रास्ता ऑप्टिमाइज़ कर रहे हैं जिसका इस्तेमाल, कुत्तों को उनके घर से पिक अप करने के लिए किया जाता है. इस स्थिति में, आपको ऑप्टिमाइज़र से यह उम्मीद है कि वह रास्ता तय करते समय, कुत्तों को पिक अप करने और वाहन के संचालन से जुड़ी लागतों को ध्यान में रखे.
इस उदाहरण के लिए, लागत की एक यूनिट का मतलब एक डॉलर है. इसका मतलब है कि आपके अनुरोध में, लागत मॉडल की प्रॉपर्टी की वैल्यू ये हैं:
| प्रॉपर्टी | मान | स्थिति |
|---|---|---|
penaltyCost |
10 | इससे, उस पेनल्टी के बारे में पता चलता है जो आपने अपने ग्राहकों को, तय किए गए दिन उनके कुत्ते को पिक अप न करने पर दी है. अगर तय किए गए दिन कुत्ते को पिक अप नहीं किया जाता है, तो ग्राहक को सेवा के कुल शुल्क में 40 डॉलर की छूट मिलती है. |
fixedCost |
30 | इससे, वाहन के लोन की रोज़ाना की किस्तों की लागत के बारे में पता चलता है. यह लागत, हर दिन 30 डॉलर है. |
costPerKilometer |
0.08 | इससे पता चलता है कि आपका वाहन, हर किलोमीटर में कितना पेट्रोल खर्च करता है. आपके वाहन को एक किलोमीटर चलने के लिए 0.04 गैलन पेट्रोल की ज़रूरत होती है. साथ ही, आपके इलाके में एक गैलन की लागत दो डॉलर है. |
costPerHour |
27 | इससे पता चलता है कि वाहन चलाने के लिए, ड्राइवर को कितना भुगतान किया जाता है. ड्राइवर को हर घंटे के लिए 27 डॉलर का भुगतान किया जाता है. |
costPerTraveledHour |
2.5 | इससे पता चलता है कि रास्ते में कुत्तों के लिए, वाहन के एयर कंडिशनर के लिए हर घंटे कितना भुगतान करना पड़ता है. जब वाहन नहीं चल रहा होता है, तब ड्राइवर पीछे के दरवाज़े खोल सकता है और एयर कंडिशनर बंद कर सकता है. |
लागत के पैरामीटर के आधार पर, ऑप्टिमाइज़र ऐसे ट्रेड-ऑफ़ कर सकता है जो लोगों को साफ़ तौर पर नहीं दिखते. हालांकि, इन्हें ऑप्टिमाइज़ेशन के ज़रिए देखा जा सकता है.
यहां दिए गए डायग्राम में एक उदाहरण दिखाया गया है. इसमें ऑप्टिमाइज़र, बिंदी वाली लाल लाइन पर ट्रैफ़िक से बचने के लिए, हरी डैश वाली लाइन के ज़रिए लंबा, लेकिन कम समय में पहुंचने वाला रास्ता चुन सकता है.

इस स्थिति में, दोनों रास्तों की लागत का बैलेंस यह है:
हरी डैश वाली लाइन की
costPerHourऔरcostPerTraveledHourकम है, क्योंकि यह कम समय में पहुंचने वाला रास्ता है और इस पर ट्रैफ़िक नहीं होता. इसलिए, यह रास्ता लागत के हिसाब से ज़्यादा बेहतर है. भले ही,costPerKilometerज़्यादा हो.बिंदी वाली लाल लाइन की
costPerKilometerकम है, क्योंकि यह सीधा रास्ता है. हालांकि, ट्रैफ़िक में इंतज़ार के समय की वजह से,costPerHourऔरcostPerTraveledHourबहुत ज़्यादा है. इसलिए, यह रास्ता सबसे महंगा है.
अनुरोध का उदाहरण
यहां दिए गए उदाहरण में, optimizeTours
अनुरोध का स्ट्रक्चर दिखाया गया है. इसमें, उदाहरण के तौर पर दी गई स्थिति में सेट की गई वैल्यू शामिल हैं:
{ "model": { "shipments": [ { "pickups": [ { "arrivalLocation": { "latitude": 37.8024, "longitude": -122.4058 } } ], "deliveries": [ { "arrivalLocation": { "latitude": 37.759773, "longitude": -122.427063 } } ] "penaltyCost": 40 } ], "vehicles": [ { "startLocation": { "latitude": 37.759773, "longitude": -122.427063 }, "endLocation": { "latitude": 37.759773, "longitude": -122.427063 }, "fixedCost": 30, "costPerKilometer": 0.08, "costPerHour": 27, "costPerTraveledHour": 2.5 } ] } }
जवाब की प्रॉपर्टी
OptimizeToursResponse मैसेज में, लागत की प्रॉपर्टी
शामिल होती हैं. इनमें, किसी रास्ते को पूरा करने की प्रोसेस में लगने वाली लागतों के बारे में बताया जाता है:
metrics.costs: लागत से जुड़े अनुरोध के फ़ील्ड के हिसाब से, सभी रास्तों की कुल लागत.metrics.totalCost: सभी रास्तों की कुल लागत.