लागत का मॉडल

कीमत की प्रॉपर्टी, ShipmentModel.shipments.Shipment और ShipmentModel.vehicles.Vehicle में दी गई हैं

Route Optimization API का मुख्य लक्ष्य, कम से कम किराये वाले रास्ते ढूंढना है. इसलिए, लागत मॉडल, रास्ते को ऑप्टिमाइज़ करने के लिए मुख्य ड्राइवर है.

कीमत का मॉडल, प्रॉपर्टी का एक सेट होता है. इसमें ग्लोबल, वाहन, और शिपमेंट की कीमतों की जानकारी होती है.

लागत मॉडल प्रॉपर्टी, ऑप्टिमाइज़ेशन के इन मकसदों के साथ काम करती हैं:

  • वाहन के असाइनमेंट और रास्ते तय करना
  • पिकअप और डिलीवरी में लगने वाला समय किफ़ायती हो
  • ज़रूरी शिपमेंट को प्राथमिकता देना

बनावट

डायग्राम में दिखाए गए तरीके से, लागत मॉडल प्रॉपर्टी को व्यवस्थित किया जाता है:

इस दस्तावेज़ में, सिर्फ़ लागत मॉडल के ज़रूरी पैरामीटर हाइलाइट किए गए हैं. लागत पैरामीटर के पूरे सेट के लिए, रेफ़रंस दस्तावेज़ देखें.

ज़रूरी शर्तों की चेकलिस्ट

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

ज़्यादा बेहतर ऑप्टिमाइज़ेशन लक्ष्यों को हासिल करने के लिए,

प्रॉपर्टी

यहां दी गई टेबल में, लागत मॉडल की प्रॉपर्टी की सूची दी गई है और उनके बारे में जानकारी दी गई है.

Parent प्रॉपर्टी का नाम प्रॉपर्टी किस तरह की है हर प्रॉपर्टी की जानकारी
Shipment penaltyCost संख्या फ़ोटो के प्रिंट की डिलीवरी रोक दी गई है शिपिंग को छोड़ने पर होने वाली लागत.
जब शिपिंग की लागत, जुर्माने की लागत से ज़्यादा हो जाती है, तो एपीआई किसी शिपमेंट को स्किप कर देता है.
  • penaltyCost सेट करने पर, ज़्यादा कीमत वाले शिपमेंट की डिलीवरी को प्राथमिकता दी जाती है.
  • शिपमेंट penaltyCost सेट न करने पर, शिपमेंट करना ज़रूरी हो जाता है.
  • शिपमेंट 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 गैलन की ज़रूरत होती है. आपके इलाके में एक गैलन की कीमत 2 डॉलर है.
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: सभी रास्तों की कुल लागत.