목표는 최단 이동 거리 또는 시간, 정시 배송, 운전자 간의 부하 균형 조정과 같은 일반적인 최적화 타겟을 사전 정의하는 매개변수입니다. 이는 개발자가 비용 매개변수의 정교화 및 전체 맞춤설정을 학습하기 전에 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 프로젝트 번호 또는 ID로 설정합니다.
다음 명령어는
OptimizeToursRequest
를 Route Optimization API로 전송하여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 프로젝트 번호 또는 ID로 설정합니다.
다음 명령어는 Route Optimization API에
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" } }