ShipmentModel
가 포함된 OptimizeToursRequest
를 전송하고 ShipmentRoute
가 포함된 OptimizeToursResponse
를 반환합니다. 이는 전체 비용을 최소화하는 차량에서 실행할 경로 집합입니다.
ShipmentModel
모델은 주로 실행해야 하는 Shipment
와 Shipment
를 전송하는 데 사용할 수 있는 Vehicle
로 구성됩니다. ShipmentRoute
는 Shipment
를 Vehicle
에 할당합니다. 구체적으로는 일련의 Visit
를 각 차량에 할당합니다. 여기서 Visit
는 Shipment
의 픽업 또는 배달인 VisitRequest
에 해당합니다.
목표는 ShipmentRoute
를 Vehicle
에 할당하여 ShipmentModel
에 정의된 많은 구성요소가 비용에 포함되는 경우 총 비용을 최소화하는 것입니다.
HTTP 요청
POST https://routeoptimization.googleapis.com/v1/{parent=projects/*}:optimizeTours
URL은 gRPC 트랜스코딩 문법을 사용합니다.
경로 매개변수
매개변수 | |
---|---|
parent |
필수 항목입니다. 전화를 걸 대상 프로젝트 또는 위치입니다. 형식: * 위치를 지정하지 않으면 지역이 자동으로 선택됩니다. |
요청 본문
요청 본문에는 다음과 같은 구조의 데이터가 포함됩니다.
JSON 표현 |
---|
{ "timeout": string, "model": { object ( |
필드 | |
---|---|
timeout |
이 제한 시간이 설정되어 있으면 제한 시간이 경과하거나 동기식 요청에 대한 서버 기한에 도달하기 전(둘 중 더 빠른 시간)에 도달할 때까지 서버에서 응답을 반환합니다. 비동기식 요청의 경우 제한 시간이 초과되기 전에 서버가 솔루션을 생성합니다 (가능한 경우). 소수점 아래가 최대 9자리까지이고 ' |
model |
해결해야 할 배송 모델입니다. |
solvingMode |
기본적으로 해결 모드는 |
searchMode |
요청을 해결하는 데 사용되는 검색 모드입니다. |
injectedFirstSolutionRoutes[] |
최적화 알고리즘이 이전 솔루션과 유사한 첫 번째 솔루션을 찾도록 안내합니다. 첫 번째 솔루션이 빌드될 때 모델이 제한됩니다. 첫 번째 솔루션에서는 특정 경로에서 이뤄지지 않은 모든 배송을 암시적으로 건너뛰지만, 후속 솔루션에서는 배송을 진행할 수 있습니다. 솔루션은 다음과 같은 기본적인 유효성 가정을 충족해야 합니다.
삽입된 솔루션을 실행할 수 없는 경우 유효성 검사 오류가 반드시 반환되지는 않으며 대신 실행 불가능을 나타내는 오류가 반환될 수 있습니다. |
injectedSolutionConstraint |
이전 솔루션과 유사한 최종 솔루션을 찾기 위해 최적화 알고리즘을 제한합니다. 예를 들어, 이미 완료되었거나 완료될 예정이지만 수정해서는 안 되는 경로의 일부를 고정하는 데 사용할 수 있습니다. 삽입된 솔루션을 실행할 수 없는 경우 유효성 검사 오류가 반드시 반환되지는 않으며 대신 실행 불가능을 나타내는 오류가 반환될 수 있습니다. |
refreshDetailsRoutes[] |
비어 있지 않은 경우 기본 방문 순서 또는 이동 시간을 수정하지 않고 지정된 경로가 새로고침되며 다른 세부정보만 업데이트됩니다. 이 방법으로는 모델이 해결되지 않습니다. 2020년 11월부터는 비어 있지 않은 경로의 다중선만 채워지며 전달된 경로의 이 필드는
|
interpretInjectedSolutionsUsingLabels |
true인 경우:
이러한 해석은 true인 경우 다음 카테고리의 라벨은 해당 카테고리에서 최대 한 번 표시되어야 합니다.
주입된 솔루션의 주입된 솔루션에서 경로 방문 또는 전체 경로를 제거하면 암시적 제약 조건에 영향을 미쳐 솔루션 변경, 검증 오류 또는 실행 불가로 이어질 수 있습니다. 참고: 호출자는 각 |
considerRoadTraffic |
|
populatePolylines |
true인 경우 응답 |
populateTransitionPolylines |
true인 경우 응답 |
allowLargeDeadlineDespiteInterruptionRisk |
이 속성이 설정된 경우 요청의 기한 (https://grpc.io/blog/deadlines 참고)은 최대 60분까지 가능합니다. 그렇지 않으면 최대 기한은 30분입니다. 오래 지속되는 요청은 중단 위험이 훨씬 큽니다 (그러나 작음). |
useGeodesicDistances |
true인 경우 이동 거리는 Google 지도 거리 대신 최단 거리 거리를 사용하여 계산되고, 이동 시간은 |
label |
이 요청을 식별하는 데 사용할 수 있는 라벨로, |
geodesicMetersPerSecond |
|
maxValidationErrors |
반환되는 유효성 검사 오류의 개수를 자릅니다. 이러한 오류는 일반적으로 SolveMode=VALIDATE_ONLY: |
응답 본문
성공한 경우 응답 본문에 OptimizeToursResponse
의 인스턴스가 포함됩니다.
승인 범위
다음 OAuth 범위가 필요합니다.
https://www.googleapis.com/auth/cloud-platform
IAM 권한
parent
리소스에 대해서는 다음 IAM 권한이 필요합니다.
routeoptimization.locations.use
자세한 내용은 IAM 문서를 참조하세요.