CN113592275B - 一种货运调度方法、计算机可读存储介质及计算机设备 - Google Patents
一种货运调度方法、计算机可读存储介质及计算机设备 Download PDFInfo
- Publication number
- CN113592275B CN113592275B CN202110834394.0A CN202110834394A CN113592275B CN 113592275 B CN113592275 B CN 113592275B CN 202110834394 A CN202110834394 A CN 202110834394A CN 113592275 B CN113592275 B CN 113592275B
- Authority
- CN
- China
- Prior art keywords
- order
- orders
- path
- freight vehicle
- allocated
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 37
- 238000004590 computer program Methods 0.000 claims description 14
- 230000006870 function Effects 0.000 claims description 6
- 238000003780 insertion Methods 0.000 claims description 6
- 230000037431 insertion Effects 0.000 claims description 6
- 238000012216 screening Methods 0.000 claims description 4
- 238000010586 diagram Methods 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 238000011161 development Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/06—Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
- G06Q10/063—Operations research, analysis or management
- G06Q10/0631—Resource planning, allocation, distributing or scheduling for enterprises or organisations
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/08—Logistics, e.g. warehousing, loading or distribution; Inventory or stock management
- G06Q10/083—Shipping
Landscapes
- Business, Economics & Management (AREA)
- Engineering & Computer Science (AREA)
- Human Resources & Organizations (AREA)
- Economics (AREA)
- Strategic Management (AREA)
- Entrepreneurship & Innovation (AREA)
- Quality & Reliability (AREA)
- Operations Research (AREA)
- Marketing (AREA)
- Development Economics (AREA)
- Tourism & Hospitality (AREA)
- Physics & Mathematics (AREA)
- General Business, Economics & Management (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Educational Administration (AREA)
- Game Theory and Decision Science (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本申请适用于物流领域,提供了一种货运调度方法、计算机可读存储介质及计算机设备。所述方法包括:将当前最紧急的订单或最重要客户的订单依次指派给预设的货运车辆集中每辆货运车辆,并根据货运车辆位置选择最优指派的货运车辆和所述最优指派的货运车辆的最优行驶路径,更新待分配的订单和可接单的货运车辆路径;选取使路径耗时或距离增加最多的已分配的订单或者随机选取部分已分配的订单,从已规划的路径中移除,重新加入待分配订单集中,然后返回,实现逐步迭代,直至达到预设的迭代次数时选择最优指派的货运车辆的最优行驶路径,输出最优行驶路径。因此,在现实生活的大规模订单的场景下,能快速找到比较好的路径方案。
Description
技术领域
本申请属于物流领域,尤其涉及一种货运调度方法、计算机可读存储介质及计算机设备。
背景技术
近年来,随着货运行业的快速发展,各公司的竞争越来越激烈,货物的配送效率越来越受企业和消费者的关注,如何提升货物的配送效率是一个亟待提高的问题。例如某公司在全国数十个城市有货运业务,当客户在货运平台下单后,调度人员按照自己的经验将订单指派给司机,由司机将订单揽收到目的地。然而,调度员入离职、调度员经验差异等会带来调度效率的不稳定;同时调度员在调度时难以兼顾车是否装得下货物、车是否能在客户要求时间内到达、车的装载率等情况,效率较为低。综上所述,现有的人工调度方式将订单分配给司机的效率较低。
发明内容
本申请的目的在于提供一种货运调度方法、计算机可读存储介质及计算机设备,旨在解决现有的人工调度方式将订单分配给司机的效率较低的问题。
第一方面,本申请提供了一种货运调度方法,包括以下步骤:
S101、接收待分配订单集,所述待分配订单集包括所有待分配的订单,每个订单包括订单的紧急程度或订单的客户重要程度;
S102、将所有待分配的订单按照订单的紧急程度或订单的客户重要程度排序,将当前最紧急的订单或最重要客户的订单依次指派给预设的货运车辆集中每辆货运车辆,并根据货运车辆位置选择最优指派的货运车辆和所述最优指派的货运车辆的最优行驶路径,更新待分配的订单和可接单的货运车辆路径,所述最优指派的货运车辆的最优行驶路径是指耗时最短或者距离最短的路径,所述可接单的货运车辆路径是指根据可指派的货运车辆信息确定能满足所述当前最紧急的订单或最重要客户的订单需求的货运车辆路径;
S103、选取使路径耗时或距离增加最多的已分配的订单或者随机选取部分已分配的订单,从已规划的路径中移除,重新加入待分配订单集中,然后返回S102,实现逐步迭代,直至达到预设的迭代次数时执行S104;
S104、选择最优指派的货运车辆的最优行驶路径,输出最优行驶路径。
第二方面,本申请提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现如所述的货运调度方法的步骤。
第三方面,本申请提供了一种计算机设备,包括:
一个或多个处理器;
存储器;以及
一个或多个计算机程序,所述处理器和所述存储器通过总线连接,其中所述一个或多个计算机程序被存储在所述存储器中,并且被配置成由所述一个或多个处理器执行,其特征在于,所述处理器执行所述计算机程序时实现如所述的货运调度方法的步骤。
在本申请中,由于将所有待分配的订单按照订单的紧急程度或订单的客户重要程度排序,将当前最紧急的订单或最重要客户的订单依次指派给预设的货运车辆集中每辆货运车辆,并根据货运车辆位置选择最优指派的货运车辆和所述最优指派的货运车辆的最优行驶路径,更新待分配的订单和可接单的货运车辆路径;选取使路径耗时或距离增加最多的已分配的订单或者随机选取部分已分配的订单,从已规划的路径中移除,重新加入待分配订单集中,然后返回,实现逐步迭代,直至达到预设的迭代次数时选择最优指派的货运车辆的最优行驶路径,输出最优行驶路径。因此,在现实生活的大规模订单的场景下,能快速找到比较好的路径方案。
附图说明
图1是本申请一实施例提供的货运调度方法的流程图。
图2是本申请一实施例提供的计算机设备的具体结构框图。
具体实施方式
为了使本申请的目的、技术方案及有益效果更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
为了说明本申请所述的技术方案,下面通过具体实施例来进行说明。
请参阅图1,是本申请一实施例提供的货运调度方法的流程图,本实施例主要以该货运调度方法应用于计算机设备为例来举例说明,本申请一实施例提供的货运调度方法包括以下步骤:
S101、接收待分配订单集,所述待分配订单集包括所有待分配的订单(即还没有指派司机的订单),每个订单包括订单的紧急程度或订单的客户重要程度。
在本申请一实施例中,每个订单还包括订单号、预约上门时间范围、货物的重量和/或体积、货物的长宽高、订单起点、订单目的地、货物到达目的地的时间范围等信息。所述预约上门时间范围可以包括最早的时间范围(又称为左时间窗)和最晚的时间范围(又称为右时间窗)。
S102、将所有待分配的订单按照订单的紧急程度或订单的客户重要程度排序,将当前最紧急的订单或最重要客户的订单依次指派给预设的货运车辆集中每辆货运车辆,并根据货运车辆位置选择最优指派的货运车辆和所述最优指派的货运车辆的最优行驶路径,更新待分配的订单和可接单的货运车辆路径,所述最优指派的货运车辆的最优行驶路径是指耗时最短或者距离最短的路径,所述可接单的货运车辆路径是指根据可指派的货运车辆信息确定能满足所述当前最紧急的订单或最重要客户的订单需求的货运车辆路径。
在本申请一实施例中,所述预设的货运车辆集包括所有可指派的货运车辆信息,所述可指派的货运车辆信息包括货运车辆的定位、货运车辆的总体积、货运车辆的总承重、货运车辆的剩余体积、货运车辆的剩余承重、可承载的单票体积、可承载的单票重量、货运车辆的车厢长宽高、货运车辆的车型(例如尾板车、开顶)、货运车辆已有的路径等信息。
S103、选取使路径耗时或距离增加最多的已分配的订单或者随机选取部分已分配的订单,从已规划的路径中移除,重新加入待分配订单集中,然后返回S102,实现逐步迭代,直至达到预设的迭代次数时执行S104。
S104、选择最优指派的货运车辆的最优行驶路径,输出最优行驶路径。
S103可以改进当前解,避免局部最优。
在本申请一实施例中,S103具体可以包括以下步骤:
S1031、选取使路径耗时或距离增加最多的已分配的订单或者随机选取部分已分配的订单,从已规划的路径中移除,重新加入待分配订单集中,以更新待分配订单集。
S1032、将更新后待分配订单集中的所有待分配的订单按照订单的紧急程度或订单的客户重要程度排序,将当前最紧急的订单或最重要客户的订单依次指派给预设的货运车辆集中每辆货运车辆,并根据货运车辆位置选择最优指派的货运车辆和所述最优指派的货运车辆的最优行驶路径,更新待分配的订单和可接单的货运车辆路径。
S1033、判断是否达到预设的迭代次数,如果是,则执行S104,否则返回S1031。
S103具体也可以包括以下步骤:
S1037、选取使路径耗时或距离增加最多的已分配的订单或者随机选取部分已分配的订单,从已规划的路径中移除,重新加入待分配订单集中。
S1038、判断是否达到预设的迭代次数,如果是,则执行S104,否则返回S102。
在本申请一实施例中,随机选取部分已分配的订单从已规划的路径中移除具体可以包括以下步骤:
遍历每条已规划路径以及每条已规划路径中所插入的订单;
随机选取部分已分配的订单从已规划的路径中移除;
将移除的订单重新加入待分配订单集中。
在本申请一实施例中,选取使路径耗时或距离增加最多的已分配的订单从已规划的路径中移除具体可以包括以下步骤:
遍历每条已规划路径以及每条已规划路径中所插入的订单;
计算并记录所插入的订单使路径增加的耗时或者距离;
选取使路径耗时或距离增加最多的已分配的订单从已规划的路径中移除;
将移除的订单重新加入待分配订单集中。
在本申请一实施例中,S102具体可以包括以下步骤:
S1041、将所有待分配的订单按照订单的紧急程度或订单的客户重要程度进行排序;
S1042、选取当前最紧急的订单或最重要客户的订单;
S1043、对于每个当前最紧急的订单或最重要客户的订单,遍历预设的货运车辆集中每辆货运车辆对应的路径和路径中的所有可插入的位置,从所有可插入的位置逐个尝试插入每辆货运车辆对应的路径,得到所有插入所述当前最紧急的订单或最重要客户的订单后的路径;
S1044、通过目标函数公式得到所述所有插入所述当前最紧急的订单或最重要客户的订单后的路径中耗时最短或者距离最短的路径;
S1045、根据得到的所述耗时最短或者距离最短的路径判断本次插入操作是否能够更新路径的最优解,如果是,则执行S1046,否则返回S1043;
S1046、将所述当前最紧急的订单或最重要客户的订单插入至最优路径的相应位置,然后执行S1047;
S1047、通过目标函数公式来更新可接单的货运车辆路径的最优解及其指标,以决定将后续的最紧急的订单或最重要客户的订单分配给哪辆货运车辆的路径;
所述目标函数公式如下:
其中,Xi代表订单i是否分配给司机,取值范围为0,1,求和Xi代表总访问订单的数;求和Yij代表所有分配订单的接单路径总耗时,表示最大化访问订单数,表示最小化路径总耗时,λ1和λ2表示权重,其中λ1大于λ2。
其中,路径的指标包括新增访问订单数和新增行驶总耗时,新增访问订单数越多越好,新增行驶总耗时越少越好。
S1048、将所述当前最紧急的订单或最重要客户的订单从待分配订单集中移除;
S1049、更新待分配的订单和可接单的货运车辆路径;
S1050、判断本轮所有待分配的订单是否遍历完成,如果是,则执行S103,否则执行S1043。
在本申请一实施例中,S1032具体也可以包括以下步骤S1041至S1050,区别在于S1050中,判断本轮所有待分配的订单是否遍历完成,如果是,则执行S1033,否则执行S1043。
在本申请一实施例中,S1043具体可以包括以下步骤:
S10431、对于每个当前最紧急的订单或最重要客户的订单,遍历预设的货运车辆集中每辆货运车辆,判断每辆货运车辆是否满足容量约束、单边长约束、载重约束和派单的约束,如果任意一个条件不满足,则结束流程,如果所有条件都满足,则执行S10432;
在本申请一实施例中,所述派单的约束包括车辆定位时间约束、派单的时间约束、派单的开车距离约束、派单的时间和开车距离约束、司机的区域约束、指定时间后司机的顺路单约束(例如订单终点区域和司机的下班区域一致,下班区域可能是家的区域、停车区域等等)中的一种或任意组合。所述车辆定位时间可以选择最近预设时间内(例如1小时,可根据实际情况来设置)有上报定位的车辆作为可指派车辆。派单的时间约束是指车辆可以在预设时间内(例如35分钟)到达订单起点。派单的开车距离约束是指车辆距离订单起点在预设距离内(例如20km)。派单的时间和开车距离约束是指车辆可以在预设时间内(例如35分钟)到达订单起点,而且车辆距离订单起点在预设距离内(例如20km)。
S10432、获取货运车辆中最近一个到达的节点,所述最近一个到达的节点是指货运车辆的路径中离开时间为空,但是到达时间不为空的节点或者是指货运车辆的路径中到达时间不为空并且离开时间也不为空的节点,所述离开时间为空,但是到达时间不为空的节点是指货运车辆已经到达但还没离开(例如还在装货中)的节点;所述到达时间不为空并且离开时间也不为空的节点是指货运车辆已经到达且已离开此节点,在去新节点的路上。
S10433、从货运车辆最近一个到达的节点开始,逐位尝试将最紧急的订单或或最重要客户的订单插入路径中;
对于部分货运车辆已有订单的时候,比如货运车辆的路径任务是节点A01----节点A02---终点1---终点2的情况下,若货运车辆当时已经离开节点A01在去节点A02的路上时(即完成节点A01的取货任务,在去节点A02取货的路上),此时节点A01离开时间不为空,节点A02到达时间和离开时间为空,此时若有新订单需要在节点A03取货,需要插入到该货运车辆的路径中,只能形成如下几种路径:节点A01---节点A03---节点A02或者节点A01---节点A02---节点A03,而不能在节点A01前插入新订单,因为节点A01已经完成取货。
货运车辆已经到达下一节点就意味着货运车辆正在下一节点取货或装货,还未离开的情况,以前面一个例子:货运车辆的路径任务是节点A01----节点A02---终点1---终点2的情况下,若货运车辆当时已经离开节点A01并且已经到达节点A02但是还未离开节点A02时(即完成节点A01的取货任务,在节点A02装货的情况下),此时节点A01离开时间不为空,节点A02到达时间不为空,但是节点A02的离开时间为空,此时若有新订单需要在节点A03取货,需要插入到该货运车辆的路径中,只能形成如下几种路径:节点A01---节点A02---节点A03,而不能在节点A01前插入订单(因为节点A01已经完成取货),也不能在节点A02前插入(因为货运车辆已经到达了节点A02)。
S10434、转下一节点位置;
S10435、插入解码;
S10436、判断插入是否成功,如果是,则执行S10437,否则返回S10434;
S10437、计算插入后的路径指标;
S10438、判断是否遍历完所有位置,如果是,则执行S1044,否则返回S10434。
在本申请一实施例中,S10435具体可以包括以下步骤:
S104351、获取离开时间不为空的最近一个节点和离开时间为空的最近一个节点,所述离开时间不为空的最近一个节点是指货运车辆刚刚经过的其中一个订单的起点或终点,所述离开时间为空的最近一个节点是指货运车辆最近要到达的其中一个订单的起点或终点;
S104352、从离开时间为空的最近一个节点开始,检查离开时间不为空的最近一个节点和离开时间为空的最近一个节点之间的路径中是否需要添加物流园,如果需要,则执行S104353,否则执行S104354;
需要添加物流园的条件如下:
相邻两节点属于不同物流园。举例:路径为由节点V经节点A1至节点A2,若节点A1对应的物流园终点为d1,节点A2对应的物流园终点为d2,属于不同物流园,因此司机要先完成一个订单的任务,才能去完成下一个订单,需要在节点A1和节点A2之间插入物流园终点d1,则路径变成由节点V经节点A1和物流园终点d1至节点A2;
如果路径最后一个节点是客户,且货运车辆从最后一个节点的离开时间小于下一决策时间,则去物流园,即货运车辆预计完成取货后,还没到下次决策时间,先规划货运车辆去物流园。举例:路径为由节点V经节点A1至节点A2,路径最后一个节点A2是客户,设货运车辆计划离开最后一个节点A2的时间是12:30,下一决策时间是12:35,那么司机在12:30已完成装货,不知道去哪里,那么此时需要规划去物流园终点。
若去下一客户后来不及去所述下一客户对应的物流园,则不去下一客户,而是直接去物流园。由于每个物流园有最晚截单时间(可以理解为物流园关门时间),超过了对应时间就不能再送货,因此司机虽然能在客户用车时间前完成取货,但是无法满足在物流园截单时间前卸货,则依然不会派单给司机。举例:路径为由节点V经节点A1至节点A2,若节点A1对应的物流园终点为d1,节点A2对应的物流园终点也为d1,若去了节点A2再去物流园终点d1,时间来不及,那么不应该去了节点A2再去物流园终点d1,应去了节点A1后直接去物流园终点d1,即路径为由节点V经节点A1至物流园终点d1。
S104353、添加物流园,然后执行S10454;
S104354、更新计算各节点到达和离开时间,然后执行S104355;
S104355、判断每个节点是否满足保留在路径中的条件,如果是,则执行S104356,否则执行S104357;
S104356、把满足保留条件的节点添加在路径中;
节点是否保留在路径中的条件如下:
两节点之间等待服务时间超过两个决策周期,则将后面的节点移除。举例:路径为由节点V经节点A1至节点A2,若车辆计划到达节点A2的时间为12:30,节点A2的左时间窗为14:30,决策周期为10min,车辆到了节点A2要等2小时才能装货,那么会把节点A2从规划路径中移除,暂时不安排去节点A2。
节点离开时间在下一决策周期之后,其后续节点与其距离大于预设距离阈值,则不保留后续节点。举例:路径为由节点V经节点A1至节点A2,若车辆计划离开节点A1的时间为12:30,下一决策时间为12:20,若节点A1至节点A2的距离大于预设距离阈值,则不保留节点A2(即起点比较近,终点一样的订单给一个司机)。
如果产生不满足时间窗约束的路径,返回前面满足部分的子路径。举例:路径为由节点V经节点A1至节点A2,若车辆计划到达节点A2的时间为12:30,节点A2右时间窗为12:20,则不保留节点A2。
S104357、移除不满足保留在路径中的条件的节点,然后执行S104358;
不满足保留在路径中的条件的节点可以包括:
司机到达订单起点时间早于客户用车左时间窗-N个决策周期,N可以是2,决策周期是指对订单进行一次分配的时间周期。意思是司机不能太早到达订单起点,比如用车时间是9点,决策周期是10分钟,司机开车过去早于8点40,则不会把这个订单给这个司机;
如果司机接此订单则无法在时间窗内到达的,则属于不满足保留在路径中的条件的节点。
S104358、返回新路径及其指标,所述指标包括最大化接单数和最小化路径耗时。
在本申请一实施例中,S101之后,所述方法还可以包括以下步骤:
从所述待分配订单集中筛选出所有专送司机都无法满足的订单,并通知将所述所有专送司机都无法满足的订单指派给众包司机,从而缩短用户等待时间。
在物流零担业务中,有按天付费的专送司机和按单付费的众包司机,对于物流公司而言,专送司机接单的成本比众包司机接单的低。
所述从所述待分配订单集中筛选出所有专送司机都无法满足的订单具体可以包括以下步骤:
S1011、遍历待分配订单集中的所有待分配的订单;
S1012、针对当前所遍历的待分配的订单,检查当前时间离当前所遍历的待分配的订单的右时间窗是否超过最小的预设时间阈值,如果是,则执行S1013,否则执行S1014;
S1013、遍历预设的货运车辆集,获取所述预设的货运车辆集中的所有货运车辆信息,根据所述预设的货运车辆集中的所有货运车辆信息判断是否有车辆满足当前所遍历的待分配的订单,如果有,则执行S102,如果没有,则执行S1014;
在本申请一实施例中,所述根据所述预设的货运车辆集中的所有货运车辆信息判断是否有车辆满足当前所遍历的待分配的订单具体可以包括以下步骤中的其中一个:
若所述预设的货运车辆集中的所有货运车辆的长度都不满足当前所遍历的待分配的订单的单边长约束(即订单最长边大于货运车辆的货箱最长边),则判定为没有车辆满足当前所遍历的待分配的订单;
若所述预设的货运车辆集中的所有货运车辆能装载的单件最大重量都不能满足当前所遍历的待分配的订单的单件最大载重,则判定为没有车辆满足当前所遍历的待分配的订单;
若所述预设的货运车辆集中的所有货运车辆能装载的单件最大体积都不能满足当前所遍历的待分配的订单的单件最大体积,则判定为没有车辆满足当前所遍历的待分配的订单;
若所述预设的货运车辆集中的所有货运车辆都不能服务当前所遍历的待分配的订单所在区域,则判定为没有车辆满足当前所遍历的待分配的订单。
S1014、将当前所遍历的待分配的订单划入不可专送列表,并设置不可以专送的原因。
在本申请一实施例中,S104之后,所述方法还可以包括以下步骤:
S1051、遍历待分配订单集中的剩余待分配订单;
S1052、针对当前所遍历的待分配的订单,检查当前时间离当前所遍历的待分配的订单的右时间窗是否超过最小的预设时间阈值(例如30分钟,具体可根据实际情况来设置),如果是,则返回S1051,否则执行S1053;
S1053、将当前所遍历的待分配的订单划入不可专送列表,并通知将所述当前所遍历的待分配的订单指派给众包司机。
本申请一实施例提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现如本申请一实施例提供的货运调度方法的步骤。
图2示出了本申请一实施例提供的计算机设备的具体结构框图,一种计算机设备100包括:一个或多个处理器101、存储器102、以及一个或多个计算机程序,其中所述处理器101和所述存储器102通过总线连接,所述一个或多个计算机程序被存储在所述存储器102中,并且被配置成由所述一个或多个处理器101执行,所述处理器101执行所述计算机程序时实现如本申请一实施例提供的货运调度方法的步骤。计算机设备包括服务器和终端等。该计算机设备可以是台式计算机、移动终端或车载设备,移动终端包括手机、平板电脑、个人数字助理或可穿戴设备等中的至少一种。
在本申请中,由于将所有待分配的订单按照订单的紧急程度或订单的客户重要程度排序,将当前最紧急的订单或最重要客户的订单依次指派给预设的货运车辆集中每辆货运车辆,并根据货运车辆位置选择最优指派的货运车辆和所述最优指派的货运车辆的最优行驶路径,更新待分配的订单和可接单的货运车辆路径;选取使路径耗时或距离增加最多的已分配的订单或者随机选取部分已分配的订单,从已规划的路径中移除,重新加入待分配订单集中,然后返回,实现逐步迭代,直至达到预设的迭代次数时选择最优指派的货运车辆的最优行驶路径,输出最优行驶路径。因此,在现实生活的大规模订单的场景下,能快速找到比较好的路径方案。
应该理解的是,本申请各实施例中的各个步骤并不是必然按照步骤标号指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,各实施例中至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一非易失性计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。
Claims (11)
1.一种货运调度方法,其特征在于,包括以下步骤:
S101、接收待分配订单集,所述待分配订单集包括所有待分配的订单,每个订单包括订单的紧急程度或订单的客户重要程度;
S102、将所有待分配的订单按照订单的紧急程度或订单的客户重要程度排序,将当前最紧急的订单或最重要客户的订单依次指派给预设的货运车辆集中每辆货运车辆,并根据货运车辆位置选择最优指派的货运车辆和所述最优指派的货运车辆的最优行驶路径,更新待分配的订单和可接单的货运车辆路径,所述最优指派的货运车辆的最优行驶路径是指耗时最短或者距离最短的路径,所述可接单的货运车辆路径是指根据可指派的货运车辆信息确定能满足所述当前最紧急的订单或最重要客户的订单需求的货运车辆路径;
S103、选取使路径耗时或距离增加最多的已分配的订单或者随机选取部分已分配的订单,从已规划的路径中移除,重新加入待分配订单集中,然后返回S102,实现逐步迭代,直至达到预设的迭代次数时执行S104;
S104、选择最优指派的货运车辆的最优行驶路径,输出最优行驶路径;
S102具体包括以下步骤:
S1041、将所有待分配的订单按照订单的紧急程度或订单的客户重要程度进行排序;
S1042、选取当前最紧急的订单或最重要客户的订单;
S1043、对于每个当前最紧急的订单或最重要客户的订单,遍历预设的货运车辆集中每辆货运车辆对应的路径和路径中的所有可插入的位置,从所有可插入的位置逐个尝试插入每辆货运车辆对应的路径,得到所有插入所述当前最紧急的订单或最重要客户的订单后的路径;
S1044、通过目标函数公式得到所述所有插入所述当前最紧急的订单或最重要客户的订单后的路径中耗时最短或者距离最短的路径;
S1045、根据得到的所述耗时最短或者距离最短的路径判断本次插入操作是否能够更新路径的最优解,如果是,则执行S1046,否则返回S1043;
S1046、将所述当前最紧急的订单或最重要客户的订单插入至最优路径的相应位置,然后执行S1047;
S1047、通过目标函数公式来更新可接单的货运车辆路径的最优解及其指标,以决定将后续的最紧急的订单或最重要客户的订单分配给哪辆货运车辆的路径;
S1048、将所述当前最紧急的订单或最重要客户的订单从待分配订单集中移除;
S1049、更新待分配的订单和可接单的货运车辆路径;
S1050、判断本轮所有待分配的订单是否遍历完成,如果是,则执行S103,否则执行S1043;
S1043具体包括以下步骤:
S10431、对于每个当前最紧急的订单或最重要客户的订单,遍历预设的货运车辆集中每辆货运车辆,判断每辆货运车辆是否满足容量约束、单边长约束、载重约束和派单的约束,如果任意一个条件不满足,则结束流程,如果所有条件都满足,则执行S10432;
S10432、获取货运车辆中最近一个到达的节点,所述最近一个到达的节点是指货运车辆的路径中离开时间为空,但是到达时间不为空的节点或者是指货运车辆的路径中到达时间不为空并且离开时间也不为空的节点,所述离开时间为空,但是到达时间不为空的节点是指货运车辆已经到达但还没离开的节点;所述到达时间不为空并且离开时间也不为空的节点是指货运车辆已经到达且已离开此节点,在去新节点的路上;
S10433、从货运车辆最近一个到达的节点开始,逐位尝试将最紧急的订单或最重要客户的订单插入路径中;
S10434、转下一节点位置;
S10435、插入解码;
S10436、判断插入是否成功,如果是,则执行S10437,否则返回S10434;
S10437、计算插入后的路径指标;
S10438、判断是否遍历完所有位置,如果是,则执行S1044,否则返回S10434;
S10435具体包括以下步骤:
S104351、获取离开时间不为空的最近一个节点和离开时间为空的最近一个节点,所述离开时间不为空的最近一个节点是指货运车辆刚刚经过的其中一个订单的起点或终点,所述离开时间为空的最近一个节点是指货运车辆最近要到达的其中一个订单的起点或终点;
S104352、从离开时间为空的最近一个节点开始,检查离开时间不为空的最近一个节点和离开时间为空的最近一个节点之间的路径中是否需要添加物流园,如果需要,则执行S104353,否则执行S104354;
S104353、添加物流园,然后执行S10454;
S104354、更新计算各节点到达和离开时间,然后执行S104355;
S104355、判断每个节点是否满足保留在路径中的条件,如果是,则执行S104356,否则执行S104357;
S104356、把满足保留条件的节点添加在路径中;
S104357、移除不满足保留在路径中的条件的节点,然后执行S104358;
S104358、返回新路径及其指标,所述指标包括最大化接单数和最小化路径耗时。
2.如权利要求1所述的方法,其特征在于,S103具体包括以下步骤:
S1031、选取使路径耗时或距离增加最多的已分配的订单或者随机选取部分已分配的订单,从已规划的路径中移除,重新加入待分配订单集中,以更新待分配订单集;
S1032、将更新后待分配订单集中的所有待分配的订单按照订单的紧急程度或订单的客户重要程度排序,将当前最紧急的订单或最重要客户的订单依次指派给预设的货运车辆集中每辆货运车辆,并根据货运车辆位置选择最优指派的货运车辆和所述最优指派的货运车辆的最优行驶路径,更新待分配的订单和可接单的货运车辆路径;
S1033、判断是否达到预设的迭代次数,如果是,则执行S104,否则返回S1031。
3.如权利要求1所述的方法,其特征在于,S103具体包括以下步骤:
S1037、选取使路径耗时或距离增加最多的已分配的订单或者随机选取部分已分配的订单,从已规划的路径中移除,重新加入待分配订单集中;
S1038、判断是否达到预设的迭代次数,如果是,则执行S104,否则返回S102。
4.如权利要求2或3所述的方法,其特征在于,随机选取部分已分配的订单从已规划的路径中移除具体包括以下步骤:
遍历每条已规划路径以及每条已规划路径中所插入的订单;
随机选取部分已分配的订单从已规划的路径中移除;
将移除的订单重新加入待分配订单集中;
选取使路径耗时或距离增加最多的已分配的订单从已规划的路径中移除具体包括以下步骤:
遍历每条已规划路径以及每条已规划路径中所插入的订单;
计算并记录所插入的订单使路径增加的耗时或者距离;
选取使路径耗时或距离增加最多的已分配的订单从已规划的路径中移除;
将移除的订单重新加入待分配订单集中。
5.如权利要求1至3任一项所述的方法,其特征在于,
所述目标函数公式如下:
其中,Xi代表订单i是否分配给司机,取值范围为0,1,求和Xi代表总访问订单的数;求和Yij代表所有分配订单的接单路径总耗时,表示最大化访问订单数,表示最小化路径总耗时,λ1和λ2表示权重,其中λ1大于λ2;路径的指标包括新增访问订单数和新增行驶总耗时。
6.如权利要求2所述的方法,其特征在于,S1032具体包括步骤S1041至S1049,然后执行S1050、判断本轮所有待分配的订单是否遍历完成,如果是,则执行S1033,否则执行S1043。
7.如权利要求1所述的方法,其特征在于,S101之后,所述方法还包括以下步骤:
从所述待分配订单集中筛选出所有专送司机都无法满足的订单,并通知将所述所有专送司机都无法满足的订单指派给众包司机。
8.如权利要求7所述的方法,其特征在于,所述从所述待分配订单集中筛选出所有专送司机都无法满足的订单具体包括以下步骤:
S1011、遍历待分配订单集中的所有待分配的订单;
S1012、针对当前所遍历的待分配的订单,检查当前时间离当前所遍历的待分配的订单的右时间窗是否超过最小的预设时间阈值,如果是,则执行S1013,否则执行S1014;
S1013、遍历预设的货运车辆集,获取所述预设的货运车辆集中的所有货运车辆信息,根据所述预设的货运车辆集中的所有货运车辆信息判断是否有车辆满足当前所遍历的待分配的订单,如果有,则执行S102,如果没有,则执行S1014;
S1014、将当前所遍历的待分配的订单划入不可专送列表,并设置不可以专送的原因。
9.如权利要求1所述的方法,其特征在于,S104之后,所述方法还包括以下步骤:
S1051、遍历待分配订单集中的剩余待分配订单;
S1052、针对当前所遍历的待分配的订单,检查当前时间离当前所遍历的待分配的订单的右时间窗是否超过最小的预设时间阈值,如果是,则返回S1051,否则执行S1053;
S1053、将当前所遍历的待分配的订单划入不可专送列表,并通知将所述当前所遍历的待分配的订单指派给众包司机。
10.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至9任一项所述的货运调度方法的步骤。
11.一种计算机设备,包括:
一个或多个处理器;
存储器;以及
一个或多个计算机程序,所述处理器和所述存储器通过总线连接,其中所述一个或多个计算机程序被存储在所述存储器中,并且被配置成由所述一个或多个处理器执行,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至9任一项所述的货运调度方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110834394.0A CN113592275B (zh) | 2021-07-23 | 2021-07-23 | 一种货运调度方法、计算机可读存储介质及计算机设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110834394.0A CN113592275B (zh) | 2021-07-23 | 2021-07-23 | 一种货运调度方法、计算机可读存储介质及计算机设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113592275A CN113592275A (zh) | 2021-11-02 |
CN113592275B true CN113592275B (zh) | 2024-03-05 |
Family
ID=78249549
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110834394.0A Active CN113592275B (zh) | 2021-07-23 | 2021-07-23 | 一种货运调度方法、计算机可读存储介质及计算机设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113592275B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114202193A (zh) * | 2021-12-09 | 2022-03-18 | 国家能源集团新疆能源有限责任公司 | 一种煤炭运输车队的车辆调度方法、系统及存储介质 |
CN114757623A (zh) * | 2022-05-05 | 2022-07-15 | 江苏满运软件科技有限公司 | 一种货运派单方法、装置、电子设备及存储介质 |
Citations (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001344317A (ja) * | 2000-06-05 | 2001-12-14 | Mitsubishi Chemicals Corp | 配車計画支援システム |
JP2002123887A (ja) * | 2000-10-13 | 2002-04-26 | E-Track Kk | 配車計画サービス提供システムおよび配車計画システム |
CN102156756A (zh) * | 2011-05-16 | 2011-08-17 | 复旦大学 | 一种基于图嵌入的在道路网络中查找最优路径的方法 |
CN105512747A (zh) * | 2015-11-25 | 2016-04-20 | 安吉汽车物流有限公司 | 物流智能优化调度系统 |
CN105809279A (zh) * | 2016-03-03 | 2016-07-27 | 河海大学 | 一种基于多目标量子混合蛙跳算法的水资源优化调度方法 |
CN107451693A (zh) * | 2017-08-02 | 2017-12-08 | 南京工业大学 | 多点多目标的危化品运输路径优化方法 |
CN107633375A (zh) * | 2017-09-20 | 2018-01-26 | 武汉木神机器人有限责任公司 | 一种人机协作仓储分拣方法 |
CN108985597A (zh) * | 2018-06-29 | 2018-12-11 | 华南理工大学 | 一种动态物流调度方法 |
CN109276884A (zh) * | 2018-08-30 | 2019-01-29 | 北京深极智能科技有限公司 | 游戏路径生成方法和装置 |
CN110097313A (zh) * | 2019-04-04 | 2019-08-06 | 华南理工大学 | 获取带时间窗和先进后出限制的取送货车辆路径的方法 |
CN110728421A (zh) * | 2019-08-30 | 2020-01-24 | 山东理工大学 | 一种基于充电需求大数据的路网充电优化方法 |
CN110956371A (zh) * | 2019-11-18 | 2020-04-03 | 杭州德意电器股份有限公司 | 面向复杂人机耦合的智能制造车间的绿色调度优化方法 |
CN111667091A (zh) * | 2020-04-17 | 2020-09-15 | 浙江优智物联科技有限公司 | 一种基于粒子群算法的输送系统智能控制方法 |
CN113033866A (zh) * | 2020-11-12 | 2021-06-25 | 广东财经大学华商学院 | 一种紧急订单配送调度优化方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100913837B1 (ko) * | 2006-01-10 | 2009-08-26 | 주식회사 엘지화학 | 다수의 차량에 대한 최적 배차 방법 및 이를 위한 시스템 |
-
2021
- 2021-07-23 CN CN202110834394.0A patent/CN113592275B/zh active Active
Patent Citations (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001344317A (ja) * | 2000-06-05 | 2001-12-14 | Mitsubishi Chemicals Corp | 配車計画支援システム |
JP2002123887A (ja) * | 2000-10-13 | 2002-04-26 | E-Track Kk | 配車計画サービス提供システムおよび配車計画システム |
CN102156756A (zh) * | 2011-05-16 | 2011-08-17 | 复旦大学 | 一种基于图嵌入的在道路网络中查找最优路径的方法 |
CN105512747A (zh) * | 2015-11-25 | 2016-04-20 | 安吉汽车物流有限公司 | 物流智能优化调度系统 |
CN105809279A (zh) * | 2016-03-03 | 2016-07-27 | 河海大学 | 一种基于多目标量子混合蛙跳算法的水资源优化调度方法 |
CN107451693A (zh) * | 2017-08-02 | 2017-12-08 | 南京工业大学 | 多点多目标的危化品运输路径优化方法 |
CN107633375A (zh) * | 2017-09-20 | 2018-01-26 | 武汉木神机器人有限责任公司 | 一种人机协作仓储分拣方法 |
CN108985597A (zh) * | 2018-06-29 | 2018-12-11 | 华南理工大学 | 一种动态物流调度方法 |
CN109276884A (zh) * | 2018-08-30 | 2019-01-29 | 北京深极智能科技有限公司 | 游戏路径生成方法和装置 |
CN110097313A (zh) * | 2019-04-04 | 2019-08-06 | 华南理工大学 | 获取带时间窗和先进后出限制的取送货车辆路径的方法 |
CN110728421A (zh) * | 2019-08-30 | 2020-01-24 | 山东理工大学 | 一种基于充电需求大数据的路网充电优化方法 |
CN110956371A (zh) * | 2019-11-18 | 2020-04-03 | 杭州德意电器股份有限公司 | 面向复杂人机耦合的智能制造车间的绿色调度优化方法 |
CN111667091A (zh) * | 2020-04-17 | 2020-09-15 | 浙江优智物联科技有限公司 | 一种基于粒子群算法的输送系统智能控制方法 |
CN113033866A (zh) * | 2020-11-12 | 2021-06-25 | 广东财经大学华商学院 | 一种紧急订单配送调度优化方法 |
Non-Patent Citations (3)
Title |
---|
基于改进蚁群算法的无人仓的多AGV避碰路径优化策略;杨洋;张建敏;刘艺林;宋馨;;数学的实践与认识(16);3-11 * |
带时间窗动态车辆路径问题的优化调度策略;王君;李波;卢志刚;;计算机工程(13);143-147 * |
有顾客时间窗和发货量变化的紧急车辆调度研究;钟石泉;杜纲;贺国光;;管理工程学报(04);118-122 * |
Also Published As
Publication number | Publication date |
---|---|
CN113592275A (zh) | 2021-11-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113592275B (zh) | 一种货运调度方法、计算机可读存储介质及计算机设备 | |
CN110348613B (zh) | 分拨中心智能物流管理方法及系统 | |
CN110363396B (zh) | 物流资源配置方法及装置 | |
CN108846623B (zh) | 基于多目标蚁群算法的整车物流调度方法及装置、存储介质、终端 | |
Chen et al. | Dynamic column generation for dynamic vehicle routing with time windows | |
CN111126643B (zh) | 一种月台的预约方法、预约装置及可读存储介质 | |
CN113159561A (zh) | 一种货运调度方法、计算机可读存储介质及计算机设备 | |
CN115860613B (zh) | 一种考虑预约机制的零担车货匹配及车辆调度方法 | |
CN111582590B (zh) | 一种调度预测方法、装置、设备及存储介质 | |
CN113592282A (zh) | 一种物品分配方法和装置 | |
CN114386720A (zh) | 物流系统调度管理方法、系统、终端设备及存储介质 | |
Yu et al. | Door allocations to origins and destinations at less-than-truckload trucking terminals | |
Wang et al. | Pickup and delivery of automobiles from warehouses to dealers | |
CN112116134A (zh) | 一种物流计划的制定方法及相关装置 | |
CN116187092A (zh) | 一种考虑运力系统供需状态的动态配送订单分配优化方法 | |
Billing et al. | A multiperiod auto-carrier transportation problem with probabilistic future demands | |
CN116739315B (zh) | 一种门窗订单派送方法、装置、电子设备及存储介质 | |
CN117973626A (zh) | 数字月台车辆调度规划实现方法 | |
CN111815012A (zh) | 租车平台中心仓车位分配方法、电子设备及存储介质 | |
CN111582574B (zh) | 订单解绑的方法及装置 | |
CN118114953B (zh) | 多源异构数据融合的数字物流大数据平台及方法 | |
CN112623603B (zh) | 用于智能仓储的货物拣选方法 | |
CN116542458B (zh) | 一种载具分配方法、系统和电子设备 | |
CN117495237B (zh) | 货运集散系统的管理方法、设备和可读存储介质 | |
CN118095992B (zh) | 一种众包模式下同日配送的插单方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |