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