Tujuan adalah parameter yang menentukan target pengoptimalan umum sebelumnya, seperti jarak atau durasi perjalanan terpendek, pengiriman tepat waktu, menyeimbangkan beban antara pengemudi. Hal ini dimaksudkan untuk memudahkan developer melakukan aktivasi Route Optimization API sebelum mempelajari kecanggihan dan penyesuaian penuh parameter biaya.
Jika ditetapkan, ShipmentModel.objectives
akan menimpa model biaya sepenuhnya, sehingga tidak kompatibel dengan biaya yang sudah ada. Setiap
Objective
dipetakan ke sejumlah biaya yang telah ditentukan sebelumnya untuk atribut kendaraan, pengiriman, atau
transisi.
Saat menentukan mode penyelesaian TRANSFORM_AND_RETURN_REQUEST
, permintaan tidak diselesaikan dan hanya divalidasi serta diisi dengan biaya yang sesuai dengan tujuan yang diberikan. Permintaan yang diubah akan ditampilkan sebagai
OptimizeToursResponse.processed_request
. Semua mode penyelesaian lainnya akan
menampilkan permintaan yang telah diselesaikan.
Mode penyelesaian TRANSFORM_AND_RETURN_REQUEST
hanya valid untuk
permintaan OptimizeTours
dan tidak tersedia untuk permintaan Route Optimization API
lainnya.
Contoh: Membuat permintaan ShipmentModel.objectives
Sebelum membuat permintaan, selesaikan langkah-langkah berikut:
- Pastikan Anda telah mengonfigurasi Kredensial Default Aplikasi seperti yang dijelaskan dalam Menggunakan OAuth.
Tetapkan PROJECT_NUMBER_OR_ID ke nomor atau ID project Cloud Anda.
Perintah berikut mengirimkan
OptimizeToursRequest
ke Route Optimization API yang menampilkanOptimizeToursResponse
.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
Contoh: Membuat permintaan TRANSFORM_AND_RETURN_REQUEST
Sebelum membuat permintaan, selesaikan langkah-langkah berikut:
- Pastikan Anda telah mengonfigurasi Kredensial Default Aplikasi seperti yang dijelaskan dalam Menggunakan OAuth.
Tetapkan PROJECT_NUMBER_OR_ID ke nomor atau ID project Cloud Anda.
Perintah berikut mengirim
OptimizeToursRequest
ke Route Optimization API yang menampilkanOptimizeToursResponse
dengan kumpulan kolomProcessedRequest
. Perintah sebelumnya akan menghasilkan respons yang mirip dengan berikut ini.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" } }