解决旅游优化问题后的响应,其中包含每辆车行驶的路线、已跳过的货件以及解决方案的总费用。
| JSON 表示法 |
|---|
{ "routes": [ { object ( |
| 字段 | |
|---|---|
routes[] |
为每辆车计算的路线;第 i 条路线对应于模型中的第 i 辆车。 |
requestLabel |
|
skippedShipments[] |
所有跳过的配送的列表。 |
validationErrors[] |
我们能够独立检测到的所有验证错误的列表。请参阅 |
processedRequest |
在某些情况下,我们会先修改传入的请求(即添加费用),然后再解决问题。如果 solvingMode == TRANSFORM_AND_RETURN_REQUEST,则在此处返回修改后的请求。 实验性功能:如需了解详情,请参阅 https://developers.google.com/maps/tt/route-optimization/experimental/objectives/make-request。 |
metrics |
此解决方案的时长、距离和使用情况指标。 |
OptimizeToursValidationError
用于描述验证 OptimizeToursRequest 时遇到的错误或警告。
| JSON 表示法 |
|---|
{
"code": integer,
"displayName": string,
"fields": [
{
object ( |
| 字段 | |
|---|---|
code |
验证错误由始终存在的 ( 此部分后面的字段提供了有关错误的更多背景信息。 多个错误:如果存在多个错误,验证过程会尝试输出其中的几个。与编译器类似,这是一个不完善的过程。某些验证错误是“致命”的,这意味着它们会停止整个验证过程。 稳定性: |
displayName |
错误显示名称。 |
fields[] |
错误上下文可能涉及 0 个、1 个(大多数情况下)或多个字段。例如,如需指明车辆 4 和货件 2 的首次取货,可以按如下方式操作: 不过请注意,对于给定的错误代码, |
errorMessage |
直观易懂的字符串,用于描述错误。 稳定性:不稳定:与给定 |
offendingValues |
可能包含相应字段的值。此功能并非总是可用。您绝对不应依赖它,而应仅将其用于手动模型调试。 |
FieldReference
指定验证错误的上下文。FieldReference 始终是指此文件中的给定字段,并遵循相同的层次结构。例如,我们可以使用以下代码指定车辆 5 的 startTimeWindows 的元素 2:
name: "vehicles" index: 5 subField { name: "endTimeWindows" index: 2 }
不过,我们会省略 OptimizeToursRequest 或 ShipmentModel 等顶级实体,以免消息过于拥挤。
| JSON 表示法 |
|---|
{ "name": string, "subField": { object ( |
| 字段 | |
|---|---|
name |
字段的名称,例如 “车辆”。 |
subField |
递归嵌套的子字段(如果需要)。 |
联合字段
|
|
index |
如果字段重复,则为字段的索引。 |
key |
如果相应字段是映射,则为键。 |
指标
汇总了所有路线的总体指标。
| JSON 表示法 |
|---|
{
"aggregatedRouteMetrics": {
object ( |
| 字段 | |
|---|---|
aggregatedRouteMetrics |
按路线汇总。每个指标都是所有同名 |
skippedMandatoryShipmentCount |
跳过的强制性配送次数。 |
usedVehicleCount |
使用的车辆数。注意:如果车辆路线为空且 |
earliestVehicleStartTime |
二手车的最早开始时间,计算方式为所有二手车的 采用 RFC 3339 标准,生成的输出将始终进行 Z 规范化(即转换为 UTC 零时区格式并在末尾附加 Z),并使用 0、3、6 或 9 个小数位。不带“Z”的偏差时间也是可以接受的。示例: |
latestVehicleEndTime |
二手车的最新结束时间,计算方式为所有二手车的 采用 RFC 3339 标准,生成的输出将始终进行 Z 规范化(即转换为 UTC 零时区格式并在末尾附加 Z),并使用 0、3、6 或 9 个小数位。不带“Z”的偏差时间也是可以接受的。示例: |
costs |
解决方案的费用,按与费用相关的请求字段细分。键是相对于输入 OptimizeToursRequest 的 proto 路径,例如“model.shipments.pickups.cost”,值是相应费用字段生成的总费用,汇总了整个解决方案。换句话说,费用 ["model.shipments.pickups.cost"] 是整个解决方案中所有取件费用的总和。模型中定义的所有费用都会在此处详细报告,但与 TransitionAttributes 相关的费用除外,这些费用自 2022 年 1 月起仅以汇总方式报告。 |
totalCost |
解决方案的总费用。费用映射中所有值的总和。 |