参数名称 | 返回参数2 | 返回参数3 | 参数类型 | 必填 | 参数说明 |
|---|
scenesType | String | 是 | 算法区分不同场景的字段。枚举: GENERAL(通用) TOBACCO_INDUSTRY(烟草模板) 说明:仅支持烟草行业的大规模计算调用,且网点数不能小于车辆数 BALANCE_PARTITION(分区均衡模板) 说明:仅支持大规模计算调用,且网点数不能小于车辆数 |
distributionModel | Int | 是 | 配送模式,单选,可选值如下: 1:单仓-多点直送,默认车辆满载从出发点直接送货,支持出发点与仓库不一致场景。此时,Depot为取货点,ServiceJob为送货点。Depot需只填一个。 2:单仓-多点取单点送。此时,Depot为送货点,ServiceJob为取货点。Depot需只填一个。 3:多仓-边取边送(多趟次循环取送),Depot需填写两个及以上。 4:多仓-先取后送(不支持多趟次循环取送),Depot需填写两个及以上。 5:单仓-先取后送,支持出发点与仓库不一致,从出发点去仓库取货后再配送; |
matrixId | String | 是 | 路网矩阵ID,路网矩阵唯一标识码(路网创建、修改接口请参考官方文档) |
lbsType | String | 是 | 路网矩阵类型,枚举。LEAST_TIME:时间优先,LEAST_DISTANCE:距离最短,NO_HIGHWAY:不走高速。 用户可以根据自己场景填写 |
commitId | String | 否 | 路网矩阵版本ID,每次修改原路网后生成的新路网的版本ID 不填默认最新版本 |
distanceType | String | 是 | 距离计算方式,枚举。STRAIGHT:直线距离, TRAVEL:导航距离。直线距离计算场景必须设置车辆的平均行驶速度 |
depots | List<Depot> | 是 | 仓库信息列表。只填一个表示单仓,填写多个表示多仓。 |
| | String | 是 | 仓库ID,用户仓库自定义参数;仓库ID必须在路网中存在 |
| | TimeWindow | 否 | 时间窗信息,时间约束条件,仓库开始工作时间和结束工作时间 |
| | startTime | int | 否 | 起始时间,单位:分钟,取值范围大于0。例如,上午10点30分的取值为630 |
| | endTime | int | 否 | 结束时间,单位:分钟,取值范围大于1 |
| | int | 否 | 仓库月台数量(月台数量和停留时间必须同时填写或者同时都不填) |
| | int | 否 | 月台停留时间(分钟)(月台数量和停留时间必须同时填写或者同时都不填) |
serviceJobs | List<ServiceJob> | 是 | 网点信息列表 |
| | String | 是 | 订单ID,唯一标识 |
| | String | 否 | 用于区分serviceJob的取送货类型,枚举; PICKUP:取货 DELIVERY:送货 未填写的默认DELIVERY;DELIVERY表示从depot取,送到location;PICKUP表示从location取,送到depot; 注意:仅支持配送模式1 单仓-多点直送、 3 多仓-边取边送、5 单仓-先取后送; |
| | String | 是 | 对应路网地址id,可与serviceJobId相同 |
| | String | 否 | 父订单ID(可为空) |
| | String | 否 | 所属仓库ID,多仓下不能为空;仓库ID必须在路网中存在 |
| | double | 否 | 网点停留时间,取值必须大于0,单位:分钟,默认值为0 |
| | double | 否 | 装卸时间,取值必须大于0,单位:分钟,默认值为0 |
| | Int | 否 | 货物在车辆上停留的最大时长限制(如:冷链场景),单位:分钟。取值范围为[0,货物最大在途时间),等于0表示该约束不生效,默认值为0。当配送模式为【单仓-多点取单点送】时,不支持限制该约束;其他配送模式均支持设置次约束。 不支持配送模式(distributionModel)2.单仓-多点取单点送; 该功能和订单优先级功能不可同用; |
| | Capacity | 是 | 网点待配送货物的量 |
| | weight | double | 是 | 装载重量,单位:千克。精度:保留小数点后四位 |
| | volume | double | 是 | 装载体积,单位:立方米。精度:保留小数点后四位 |
| | count | double | 是 | 装载数量,精度:保留小数点后四位。重量、体积、数量三个维度至少填写一个,车和货的维度保持一致 |
| | List<TimeWindow> | 否 | 网点可配送的时间段列表。可支持按天切分时间窗功能。如,一辆车可以出车两天,每天的工作时间约束不同,要求:第一天工作时间约束为8:00-11:00,14:00-18:00;第二天工作时间约束为9:00-14:00。则时间窗可设置为: [480,660],[840,1080],[1950,2280]。时间窗之间不可存在交叉时间。 |
| | startTime | int | 否 | 起始时间,单位:分钟,取值范围大于0 。例如,上午10点30分的取值为630 |
| | endTime | int | 否 | 结束时间,单位:分钟,取值范围大于1 |
| | List<String> | 否 | 需要运输的货物类型列表(车辆需要具备某种运输能力,如冷冻功能、运输危化品能力等) |
| | int | 否 | 订单优先级,取值范围必须为不小于1,不大于10,数字越小代表优先级越高;优先级只在存在分配不了的场景下,优先将高优先级的订单分配到车辆上,不影响分配的路线顺序 该功能和货物在车辆上停留的最大时长限制功能不可同用; |
vehicleModels | List<VehicleModel> | 是 | 车辆型号信息 |
| | String | 是 | 车辆型号ID,用户自定义 |
| | Capacity | 是 | 车辆额定承载 |
| | weight | double | 是 | 装载重量,单位:千克。精度:保留小数点后四位 |
| | volume | double | 是 | 装载体积,单位:立方米。精度:保留小数点后四位 |
| | count | double | 是 | 装载数量,精度:保留小数点后四位。重量、体积、数量三个维度至少填写一个,车和货的维度保持一致 |
| | double | 否 | 成本最优目标参数—车辆每公里行驶成本,取值必须大于0,单位:元/公里。当计算目标calculateTarget为成本最优时,该值必填,该值会影响到计算结果的车辆数。 |
| | double | 否 | 成本最优目标参数—车辆固定损耗成本,单位:元/天,默认值为0。当计算目标calculateTarget为成本最优时,该值会影响到计算结果的车辆数。 |
| | double | 否 | 成本最优目标参数—车辆每单位时间行驶成本,取值必须大于0,单位:元/分钟 |
| | double | 否 | 成本最优目标参数—车辆等待成本,单位:元/分钟,默认值为0 |
| | double | 否 | 成本最优目标参数—单位在途时间成本, 单位: 元/分钟 |
| | double | 否 | 成本最优目标参数—单位重量距离成本,单位:元/千克*米 |
| | double | 否 | 成本最优目标参数—单位重量时间成本,单位:元/千克*分钟 |
| | double | 否 | 平均车速,取值必须在0到120之间,单位:千米/小时,distanceType为STRAIGHT时,该参数必填 |
| | double | 否 | 最大行驶速度,取值必须在0到120之间,且必须大于平均车速,单位:千米/小时 |
vehicleGroups | List<VehicleGroup> | 是 | 车辆组信息 |
| | String | 是 | 车辆类型ID,枚举,目前支持GB01(货车,车辆长宽高6m*2m*3m)、SMALL(货车,车辆长宽高4m*2m*2m)、NORMAL(小客车)、ELECBICYCLE(两轮电动车)、BICYCLE(自行车);单次任务仅支持一种车辆类型。该信息用于道路货车限行规避,一个车辆类型会对应一个或多个型号的车辆,由用户自行决定车辆型号与车辆类型的映射关系 |
| | String | 是 | 车辆型号ID,用户自定义参数 |
| | String | 是 | 车辆所属仓库;仓库ID必须在路网中存在 |
| | int | 是 | 该型号车数量,不小于0,0代表没有限制; TOBACCO_INDUSTRY(烟草模板)或 BALANCE_PARTITION(分区均衡模板)算法引擎不支持无限车辆数。 |
| | int | 否 | 车辆允许运送的最大订单数量,不小于0,0代表没有限制 |
| | int | 否 | 车辆最大行驶距离,单位:米,不小于0,0代表没有限制 |
| | int | 否 | 车辆最大行驶时间,单位:分钟,不小于0,0代表没有限制 |
| | String | 否 | 车辆出发地点,该id在路网中必须存在,且不可以depotId相同。使用该参数时,且配送模式为多仓-边取边送或多仓-先取后送,不支持聚集性(clusteringModels)策略 |
| | List<String> | 否 | 车辆可运输的货物类型列表(车辆具备某种运输能力,如冷冻功能、运输危化品能力等) |
| | boolean | 否 | 是否回仓,默认回仓。如果配送模式选择【单仓-多点取单点送】,则该值必须设置为true。 |
| | string | 否 | 车辆最后需回到的位置地点,该id在路网中必须存在。 returnToDepot 和 endLocation 需配合使用; 注意:当scenesType=TOBACCO_INDUSTRY 或 BALANCE_PARTITION时,不支指定终点地址。 |
| | TimeWindow | 否 | 车辆可用时间窗 |
| | startTime | int | 否 | 起始时间,单位:分钟,取值范围大于0 。例如,上午10点30分的取值为630 |
| | endTime | int | 否 | 结束时间,单位:分钟,取值范围大于1 |
parameters | List<String> | 否 | 参数列表,有定制化调整需求可填写进该参数内, 参数配置失效可能是白名单问题,具体配置可联系商务对接人 |
driverFamiliarRelations | List<ExternalDriverFamiliarRelation> | 否 | 司机熟悉度相关 |
| | String | 是 | 车辆型号ID |
| | List<String> | 是 | 网点ID,最少1个;网点ID必须在路网中存在,熟悉点集合 |
| | double | 否 | 最小熟悉率;参数范围0~1,最少重合比例 |
| | double | 否 | 最大熟悉率;参数范围0~1,最大重合比例 |
isMultiCycle | boolean | 否 | 是否多趟次循环取送,仅支持:单仓-多点直送 、单仓-多点取单点送两种配送模式下使用。取值范围: false:不开启此功能(默认值) true:开启此功能 |
maxDistrictNum | int | 否 | 每条线路可跨区/县数量限制,默认值为0表示无限制,目前仅支持配送模式为单仓-多点直送、单仓-多点取单点送,多仓不支持。 需同时在路网矩阵接口里设置params参数,方可使用; |
maxCityNum | int | 否 | 每条线路可跨城市数量限制,默认值为0表示无限制,目前仅支持配送模式为单仓-多点直送、单仓-多点取单点送,多仓不支持。 需同时在路网矩阵接口里设置params参数,方可使用; |
maxIntervalDistance | int | 否 | 相邻配送网点最大行驶距离约束,单位:米,只对送货地址间的距离约束生效。默认值为0表示无限制。 目前仅支持配送模式为单仓-多点直送、单仓-多点取单点送,多仓不支持。 |
calculateTarget | int | 否 | 计算目标。取值范围如下: 0:成本最优(默认值)。会根据vehicleModel中传入的各种成本最优目标参数计算成本最优。当scenesType=TOBACCO_INDUSTRY 或 BALANCE_PARTITION时,不支持该计算目标。 1:里程最优。会将vehicleModel中单位距离成本设置1,传入的其他成本最优目标参数默认数置0。 |
clusteringModels | int | 否 | 是否考虑聚集性,聚集性是指根据订单分布尽可能能将同区域的订单计算在一条线上,以减少车辆交叉运输。支持的聚集性模式包括,单选: 0:不考虑聚集性(默认值) 1:考虑聚集性 聚集性模式参数仅支持在单仓-多点直送 和 单仓-多点取单点送 的配送模式下使用。不支持多趟次循环取送参数 |
balanceModels | List<String> | 否 | 适用场景:仅当scenesType=TOBACCO_INDUSTRY 或 BALANCE_PARTITION时,该参数可使用,其他scenesType场景均不支持设置均衡性模式参数。 适用配送模式:仅支持单仓-多点直送 和 单仓-多点取单点送。 均衡性模式,取值范围: TIME_BALANCE:各运输车辆运行时间均衡 DISTANCE_BALANCE:各运输车辆行驶里程均衡 WEIGHT_LOAD_BALANCE:各运输车辆装载-重量均衡 VOLUME_LOAD_BALANCE:各运输车辆装载-体积均衡 COUNT_LOAD_BALANCE:各运输车辆装载-数量均衡 WEIGHT_LOAD_RATE_BALANCE:各运输车辆-重量装载率均衡 VOLUME_LOAD_RATE_BALANCE:各运输车辆-体积装载率均衡 COUNT_LOAD_RATE_BALANCE:各运输车辆-数量装载率均衡 JOB_BALANCE:各运输车辆服务网点数均衡 该字段不填表示不考虑均衡性;支持同时选择多个模式,如果多选,会综合考虑均衡因素得出一个中庸解。多选时需注意: 时间均衡、里程均衡只能二选一;装载均衡、装载率均衡、网点数均衡只能三选一;装载均衡的三个维度:重量、体积、数量可以多选;装载率均衡的三个维度:重量、体积、数量可以多选;优先级:需按顺序填入数组当中,优先级最高的均衡模式填入第一个数组位置,优先级次之的填入第二个数组位置,以此类推。 |
combinedModels | String | 否 | 合单模式,即将多个订单按照某种规则进行合并,此功能默认开启,可以取值的范围,单选: BY_LOC_ID:按照送货点(locationId)相同的进行合单(默认值) BY_PARENT_ID:按照父订单ID(parentId)相同的进行合单 NONE:不开启合单功能 |
isSplitOrder | boolean | 否 | 是否使用拆单功能: true:开启拆单功能 false:不开启拆单功能(默认) 注意:当同时开启拆单模式和合单模式时,将自动采用先合单后拆单的处理方式。 |