लक्ष्य ऐसे पैरामीटर होते हैं जो ऑप्टिमाइज़ेशन के सामान्य लक्ष्यों को पहले से तय करते हैं. जैसे, यात्रा की सबसे कम दूरी या अवधि, समय पर डिलीवरी, और ड्राइवर के बीच लोड को बैलेंस करना. इसका मकसद, डेवलपर को Route Optimization API का इस्तेमाल शुरू करने में मदद करना है. इससे वे लागत के पैरामीटर की बारीकियों और पूरी तरह से कस्टम बनाने के बारे में जानने से पहले, इसका इस्तेमाल शुरू कर सकते हैं.
सेट किए जाने पर, ShipmentModel.objectives
, लागत मॉडल को पूरी तरह से बदल देते हैं. इसलिए, ये पहले से मौजूद लागत के साथ काम नहीं करते. हर Objective
, वाहनों, शिपमेंट या ट्रांज़िशन एट्रिब्यूट के लिए पहले से तय की गई कई लागतों से मैप होता है.
TRANSFORM_AND_RETURN_REQUEST
मोड तय करने पर, अनुरोध को पूरा नहीं किया जाता. साथ ही, इसकी पुष्टि की जाती है और दिए गए लक्ष्यों के हिसाब से लागत भरी जाती है. बदलाव किए गए अनुरोध को OptimizeToursResponse.processed_request
के तौर पर दिखाया जाता है. हल करने के अन्य सभी मोड, हल किए गए अनुरोध को दिखाएंगे.
TRANSFORM_AND_RETURN_REQUEST
मोड सिर्फ़ OptimizeTours
अनुरोधों के लिए मान्य है. यह Route Optimization API के अन्य अनुरोधों के लिए उपलब्ध नहीं है.
उदाहरण: ShipmentModel.objectives
का अनुरोध करें
अनुरोध करने से पहले, यह तरीका अपनाएं:
- पक्का करें कि आपने ऐप्लिकेशन के लिए डिफ़ॉल्ट क्रेडेंशियल कॉन्फ़िगर किए हों. इसके लिए, OAuth का इस्तेमाल करना लेख में दिया गया तरीका अपनाएं.
PROJECT_NUMBER_OR_ID को अपने Cloud प्रोजेक्ट नंबर या आईडी पर सेट करें.
नीचे दी गई कमांड, Route Optimization API को एक
OptimizeToursRequest
भेजती है. इसके जवाब में, यह एपीआई एकOptimizeToursResponse
दिखाता है.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 } } ], "deliveries": [ { "arrivalLocation": { "latitude": 37.42421503206021, "longitude": -122.09526063135228 } } ] } ], "vehicles": [ { "travelMode": "DRIVING", } ], "objectives": [ { "type": "MIN_TRAVEL_TIME" } ], } } EOM
उदाहरण: TRANSFORM_AND_RETURN_REQUEST
का अनुरोध करें
अनुरोध करने से पहले, यह तरीका अपनाएं:
- पक्का करें कि आपने ऐप्लिकेशन के लिए डिफ़ॉल्ट क्रेडेंशियल कॉन्फ़िगर किए हों. इसके लिए, OAuth का इस्तेमाल करना लेख में दिया गया तरीका अपनाएं.
PROJECT_NUMBER_OR_ID को अपने Cloud प्रोजेक्ट नंबर या आईडी पर सेट करें.
नीचे दी गई कमांड, Route Optimization API को एक
OptimizeToursRequest
भेजती है. यहOptimizeToursRequest
,ProcessedRequest
फ़ील्ड सेट के साथ एकOptimizeToursResponse
दिखाता है. पिछली कमांड से, इस तरह का जवाब मिलेगा.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 } } ], "deliveries": [ { "arrivalLocation": { "latitude": 37.42421503206021, "longitude": -122.09526063135228 } } ] } ], "vehicles": [ { "travelMode": "DRIVING", } ], "objectives": [ { "type": "MIN_TRAVEL_TIME" } ] }, "solvingMode": "TRANSFORM_AND_RETURN_REQUEST" } EOM
{ "processedRequest": { "model": { "shipments": [ { "pickups": [ { "arrivalLocation": { "latitude": 37.425062610009959, "longitude": -122.09535511930135 } } ], "deliveries": [ { "arrivalLocation": { "latitude": 37.424215032060211, "longitude": -122.09526063135228 } } ] } ], "vehicles": [ { "travelMode": "DRIVING", "costPerHour": 30, "costPerTraveledHour": 330, "costPerKilometer": 0.2 } ], "objectives": [ { "type": "MIN_TRAVEL_TIME" } ] }, "solvingMode": "TRANSFORM_AND_RETURN_REQUEST" } }