路线优化是一种 Google Maps Platform API,可接受结构化数据形式的车辆路线目标和操作限制条件,为一个或多个车辆提供路线计划。
为何使用路由优化
借助 Route Optimization API,您可以建立或优化自动调度或路线规划流程,从而提高交通运输需求的运营效率。该服务利用参数来表示您独特的运营目标和限制条件,并利用基于可信 Google 地图数据构建的算法,生成可能的最佳路线计划来满足这些限制。以下是一些用例示例:
- 一家物流公司使用路线优化功能来优化所有次日货物的分配,为每批货物提供一条路线,以优化距离和时间效率、节约成本、准时送达以及司机和最终客户满意度。
- 一家按需送餐公司在其实时调度流程中使用路线优化功能,选择最合适的活跃司机来接收多个新订单,并将这些订单插入其现有路线中。
- 医疗服务提供商使用路由优化将健康服务提供商映射到预约,从而提高每个提供商一天中的路线效率。
- 现场服务提供商使用路线优化功能来寻找技术人员的服务预约的最佳路线和顺序,并在情况发生变化(例如路线延误)时重新优化。
路线优化的用途
借助 Route Optimization API,您可以根据各种目标和限制条件,为车队优化路线和任务分配。
目标示例:
- 出行效率:根据距离和目的地时间等参数定义对出行效率的要求。
- 准时抵达:确保车辆按时抵达。例如,为取货、送餐或服务操作定义给定的时间范围。
- 车辆使用费用:最大限度地减少执行任务所需的车辆数量,以节省费用。
- 负载均衡:确保任务在车队和人员中均匀分布。
限制条件示例:
- 司机工作时间:工作时间的开始和结束时间以及休息时间。
- 车辆载重数:车辆一次可以承受的重量上限。
- 时间窗口:到达目的地所需的具体时段,例如客户空闲时间或商店营业时间。
依赖项和兼容性:通过以下方式之一定义工作依赖项:
- 需要特定类型的车辆或人员
- 需要先执行其他工作
- 在指定时间内,车辆必须是唯一的运单。
如需了解详情和所有可用参数,请参阅开发者参考指南(REST、gRPC)。
路由优化的工作原理
Route Optimization API 使用大量输入来返回路线计划。输入的内容包括车辆、任务或货运、目标和限制条件。路线计划包括分配给车辆的任务、每辆车的多站点路线以及相关指标。
Route Optimization API 可通过以下两种方法实现此目的:
- OptimizeTours:一个同步 API,要求客户端在继续执行其他任务之前等待服务器的响应。
- BatchOptimizeTours:异步 API,允许客户端在服务器完成并响应之前继续执行其他任务。
这两种方法具有相同的接口和支持的参数。如需详细了解 BatchOptimizeTours,请参阅同步和异步端点。
Route Optimization API 接受 HTTP POST 请求,该请求具有包含输入详细信息的 JSON 请求正文。
OptimizationTours 请求
该请求包含以下必需实体:
- 模型:配置了全局级设置和限制条件的全局实体。以及装运和车辆。
- 配送:用于定义可包含自提任务和送货上门服务的任务或实际配送,以及相应属性(包括位置和其他属性、限制条件和费用函数)。如需了解详情,请参阅装运参考文档(REST、gRPC)。
- 车辆:用于定义车辆(或司机、人员)和相应的出行属性,包括出发位置和其他车辆或出行属性、限制条件和费用函数。如需了解详情,请参阅(REST、gRPC)。
有关简单示例,请参阅自取和递送停止订单优化。
“OptimizeTours”响应
Route Optimization API 会返回一个 JSON 响应,其中包含车辆和任务或运单的路线计划。
- 路线:包含每辆车的路线及其分配的任务(或货物)
- 指标:有关生成的路由计划的汇总指标
有关简单示例,请参阅自取和递送停止订单优化。
如需详细了解如何构建请求和解读响应,请参阅解读响应。
资源
下表汇总了 Route Optimization API 提供的资源及其返回的数据。
数据资源 | 返回的数据 | 返回格式 |
batchOptimizeTours (REST、gRPC)
|
返回长时间运行的操作的资源名称,指示处理何时完成。 | JSON 或 gRPC proto |
optimizeTours (REST、gRPC)
|
返回经过优化的路由,其中包含访问次数和指标的详细信息。 | JSON 或 gRPC proto |
如何使用路由优化
1 | 开始设置 | 从设置您的 Google Cloud 项目开始,并按照随后显示的设置说明完成设置。 |
2 | 运行基本请求并接收响应 | 设置完成后,按照构建请求和解读响应的说明开始发送基本请求并获取响应。 |
3 | 尝试更高级的场景并开始创建您自己的请求 | 探索示例场景(从自提和递送停止订单优化开始),并开始构建符合您的用例的请求。 |
可用的客户端库
如需查看 Route Optimization API 的可用客户端库列表,请参阅客户端库。