टूर ऑप्टिमाइज़ेशन से जुड़ी समस्या को हल करने के बाद जवाब दिया गया है. इसमें, हर वाहन के बाद आने वाले रूट, स्किप किए गए शिपमेंट, और सलूशन की कुल लागत की जानकारी शामिल है.
जेएसओएन के काेड में दिखाना |
---|
{ "routes": [ { object ( |
फ़ील्ड | |
---|---|
routes[] |
हर वाहन के लिए जिन रूट का इस्तेमाल किया गया है; i-th रूट, मॉडल के i-th वाहन से मेल खाता है. |
requestLabel |
|
skippedShipments[] |
छूटे हुए सभी शिपमेंट की सूची. |
validationErrors[] |
पुष्टि करने से जुड़ी उन सभी गड़बड़ियों की सूची जिनका हमने अलग से पता लगाया है. |
metrics |
इस सलूशन के लिए अवधि, दूरी, और इस्तेमाल के मेट्रिक. |
OptimizeToursValidationError
OptimizeToursRequest
की पुष्टि करते समय हुई गड़बड़ी के बारे में बताता है.
जेएसओएन के काेड में दिखाना |
---|
{
"code": integer,
"displayName": string,
"fields": [
{
object ( |
फ़ील्ड | |
---|---|
code |
पुष्टि करने से जुड़ी गड़बड़ी, जोड़े ( नीचे दिए गए अन्य फ़ील्ड में, गड़बड़ी के बारे में ज़्यादा जानकारी दी गई है. कई गड़बड़ियां: जब कई गड़बड़ियां होती हैं, तो पुष्टि करने की प्रोसेस उनमें से कई गड़बड़ियां होने की कोशिश करती है. किसी कंपाइलर की तरह, यह एक अपूर्ण प्रक्रिया है. पुष्टि करने से जुड़ी कुछ गड़बड़ियां "घातक" होंगी. इसका मतलब है कि वे पुष्टि की पूरी प्रक्रिया को रोक देती हैं. यह अन्य गड़बड़ियों के साथ-साथ, स्थिरता: पहचान फ़ाइल: सभी (कोड, नाम) पेयर की सूची:
|
displayName |
गड़बड़ी का डिसप्ले नेम. |
fields[] |
गड़बड़ी वाले किसी कॉन्टेक्स्ट में 0, 1 (ज़्यादातर) या ज़्यादा फ़ील्ड शामिल हो सकते हैं. उदाहरण के लिए, वाहन #4 और शिपमेंट #2 के पहले पिकअप के बारे में इस तरह बताया जा सकता है:
हालांकि, ध्यान दें कि किसी गड़बड़ी कोड के लिए, |
errorMessage |
इस स्ट्रिंग में गड़बड़ी के बारे में ऐसी जानकारी दी गई है जिसे कोई भी व्यक्ति आसानी से पढ़ सकता है. स्थिरता: स्थिर नहीं: दिए गए |
offendingValues |
फ़ील्ड के मान शामिल हो सकते हैं. यह सुविधा हमेशा उपलब्ध नहीं होती. आपको इस पर पूरी तरह भरोसा नहीं करना चाहिए. इसका इस्तेमाल सिर्फ़ मैन्युअल मॉडल डीबग करने के लिए करना चाहिए. |
FieldReference
इससे, पुष्टि करने में हुई गड़बड़ी के बारे में पता चलता है. FieldReference
इस फ़ाइल में हमेशा किसी फ़ील्ड के बारे में बताता है और उसी हैरारकी वाले स्ट्रक्चर को फ़ॉलो करता है. उदाहरण के लिए, हम वाहन #5 के startTimeWindows
एलिमेंट #2 के बारे में बताने के लिए इनका इस्तेमाल कर सकते हैं:
name: "vehicles" index: 5 subField { name: "endTimeWindows" index: 2 }
हालांकि, मैसेज को क्राउड करने से रोकने के लिए, हम OptimizeToursRequest
या ShipmentModel
जैसी टॉप लेवल इकाइयों को हटा देते हैं.
जेएसओएन के काेड में दिखाना |
---|
{ "name": string, "subField": { object ( |
फ़ील्ड | |
---|---|
name |
फ़ील्ड का नाम, जैसे कि "वाहन". |
subField |
ज़रूरत पड़ने पर, बार-बार नेस्ट किए गए सब-फ़ील्ड. |
यूनियन फ़ील्ड
|
|
index |
दोहराए जाने पर फ़ील्ड का इंडेक्स. |
key |
अगर फ़ील्ड कोई मैप है, तो कुंजी. |
मेट्रिक
सभी रूट पर इकट्ठा की गई कुल मेट्रिक.
जेएसओएन के काेड में दिखाना |
---|
{
"aggregatedRouteMetrics": {
object ( |
फ़ील्ड | |
---|---|
aggregatedRouteMetrics |
रूट के हिसाब से इकट्ठा किया गया डेटा. हर मेट्रिक, एक ही नाम के सभी |
skippedMandatoryShipmentCount |
स्किप किए गए ज़रूरी शिपमेंट की संख्या. |
usedVehicleCount |
इस्तेमाल किए गए वाहनों की संख्या. ध्यान दें: अगर वाहन का रास्ता खाली है और |
earliestVehicleStartTime |
इस्तेमाल किए गए वाहन के शुरू होने का सबसे पहला समय, इसका हिसाब, RFC3339 यूटीसी "ज़ुलु" फ़ॉर्मैट में एक टाइमस्टैंप, जिसमें नैनोसेकंड का रिज़ॉल्यूशन और नौ फ़्रैक्शनल अंक हो सकते हैं. उदाहरण: |
latestVehicleEndTime |
इस्तेमाल किए गए वाहन के खत्म होने का सबसे नया समय, जिसे RFC3339 यूटीसी "ज़ुलु" फ़ॉर्मैट में एक टाइमस्टैंप, जिसमें नैनोसेकंड का रिज़ॉल्यूशन और नौ फ़्रैक्शनल अंक हो सकते हैं. उदाहरण: |
costs |
समाधान की लागत, जिसे लागत से जुड़े अनुरोध के फ़ील्ड के हिसाब से बांटा गया है. ये पासकोड, OptimizeToursRequest इनपुट से जुड़े प्रोटो पाथ होते हैं, जैसे कि "model.shipments.pickups.cost". और वैल्यू, संबंधित लागत फ़ील्ड से जनरेट होने वाली कुल लागत होती है, जिसे पूरे समाधान के लिए एग्रीगेट किया जाता है. दूसरे शब्दों में, लागत["model.shipments.pickups.cost"], किसी प्रॉडक्ट के लिए पिक अप किए जाने वाले कुल शुल्क का कुल योग है. मॉडल में बताई गई सभी कीमतों की पूरी जानकारी यहां दी गई है. हालांकि, ट्रांज़िशन एट्रिब्यूट से जुड़ी उन लागतों की जानकारी नहीं दी गई है जिन्हें 2022/01 तक सिर्फ़ एग्रीगेट करके रिपोर्ट किया जाता है. एक ऑब्जेक्ट, जिसमें |
totalCost |
समाधान की कुल लागत. लागत मैप में सभी वैल्यू का योग. |