货物配送的车辆调度方法
【专利摘要】本发明提供一种货物配送的车辆调度方法,通过启发式算法求解VRP问题,实现初步的车辆调度分配,获得若干的初始计划,在各初始计划中,每辆车辆均被组织有适当的行车路线,负责该行车路线上的各收货站点的货物运输,进一步进行修正计划,建立一个虚拟市场,将各初始计划中的车辆作为虚拟车辆,各虚拟车辆将各自计算出来的最劣任务定价抛到虚拟市场中交易,各虚拟车辆从虚拟市场中获取待交易任务并计算其中对自己来说产生效益的最优任务,向虚拟市场进行竞价,虚拟市场将待交易任务交易给出价最高的虚拟车辆,经过虚拟市场一定的交易后,各个虚拟司机手上的运输任务都会更近似于最优解,优化了车辆调度,实现配送的效率及利润最大化。
【专利说明】
货物配送的车辆调度方法
技术领域
[0001]本发明涉及货物运输技术,特别涉及的是一种货物配送的车辆调度方法。
【背景技术】
[0002]VRP问题(Vehicle routing problem,车辆路径问题),最早是由Dantzig和Ramser于1959年首次提出,它是指一定数量的客户,各自有不同数量的货物需求,配送中心向客户提供货物,由一个车队负责分送货物,组织适当的行车路线,目标是使得客户的需求得到满足,并能在一定的约束下,达到诸如路程最短、成本最小、耗费时间最少等目的。由于旅行商问题(TSP)是VRP的一种约化,而Gaery已证明TSP问题是NP C(Non-determ inisticPolynomial complete probIem,NP完全问题,)难题,因此,VRP也属于NPC难题。
[0003]由于无法找出一个在常规多项式时间内得出最优解的算法,所以一般的做法是找出一个近似最优解。在过去的几十年间一般是采用启发式算法来求解VRP问题,采启发式算法包括最近插入法、节约里程法、局部搜索、遗传算法、模拟退火算法、人工神经网络、禁忌搜索等。其中,贪心类算法都有容易陷入局部陷阱的缺点,而随机类别的算法具有鲁棒性,可以应用的场合较多但是有计算量巨大、解结果不稳定、无法解释的毛刺令人无法接受。
[0004]目前,通用做法一般是采取人工分解+计算机辅助规划的方法,来解决货物配送的车辆调度,在车辆配送调度过程中,需要大量人力资源。同时有效率低,调度结果依赖调度员业务素质的问题。由于多车辆、多限制条件配送问题属于NPC难题,至今没有发现可行最优解。
【发明内容】
[0005]本发明所要解决的技术问题是提供一种货物配送的车辆调度方法,在通过现有求解VRP问题的基础上,在有效时间内寻找多车辆、多限制条件货物配送问题更近似最优解。
[0006]为解决上述问题,本发明提出一种货物配送的车辆调度方法,包括以下步骤:
[0007]S1:接收多个货单信息,并提供车辆调度中心的车辆信息;
[0008]S2:采用启发式算法对所述货单信息、车辆信息进行处理,获得若干初始计划,每个初始计划包含一车辆及其所需处理的运输任务;
[0009]S3:根据各初始计划将每个车辆虚拟成为虚拟司机,并构建一用于各虚拟司机交易各自的运输任务的虚拟市场,所述虚拟市场中具有任务交易列表和市场时钟;
[0010]S4:在每一次交易前,各虚拟司机对各自的最劣任务进行价值标记后传输给所述虚拟市场,作为待交易任务保存至所述任务交易列表中;
[0011 ] S5:各虚拟司机获取所述任务交易列表中的待交易任务并选取适合各自运输条件的任务,对各自所选的任务进行价值标记后向虚拟市场发出交易请求,若虚拟市场中没有收到任何交易请求,则交易停止;
[0012]S6:所述虚拟市场根据各虚拟司机所选的任务的价值,选择其中标记价值最高的进行交易,交易完成后市场时钟变化一定值;
[0013]S7:若市场时钟达到预设截止值时则交易停止,输出结果,将各虚拟车辆经交易后的运输任务对应分配给各车辆,完成车辆调度,否则返回步骤S4。
[0014]根据本发明的一个实施例,在所述步骤SI和S2之间还包括步骤Sll:对所述货单信息进行数据处理,将重复的货单合并或错误的货单滤除。
[0015]根据本发明的一个实施例,在所述步骤S4中,各虚拟司机通过判断收益比来确定各自的最劣任务,轮流舍弃一个任务后该虚拟司机完成全部剩余任务所能获得的酬劳与所花销的成本的比值作为收益比,收益比最低的运输任务作为最劣任务。
[0016]根据本发明的一个实施例,在所述步骤S5中,每个虚拟司机将获得的待交易任务轮流加入到该虚拟司机的运输任务中,该虚拟司机完成全部运输任务所能获得的酬劳与所花销的成本的比值作为收益比,选择使得收益比最高的待交易任务作为适合各自运输条件的任务进行价值标记,向虚拟市场发出该待交易任务的交易请求。
[0017]根据本发明的一个实施例,在所述步骤S5中,各虚拟司机将已计算过收益比的待交易任务关联保存在该虚拟司机中,后续获取所述任务交易列表中的待交易任务时,仅将未计算过收益比的待交易任务加入到该虚拟司机的运输任务中计算收益比。
[0018]根据本发明的一个实施例,在所述步骤S5中,各虚拟司机对所选的任务的价值标记根据该任务即加入到该虚拟司机的运输任务中计算的收益比而定,收益比越高则标记的价值越大。
[0019]根据本发明的一个实施例,在步骤S7中,在完成车辆调度后,将车辆的调度信息反馈至步骤S2中,采用启发式算法对所述货单信息、车辆信息及历次车辆调度信息进行处理,获得若干初始计划。
[0020]根据本发明的一个实施例,所述货单信息包括收货站点、收货时间、货物重量、货物数量、货物体积;所述车辆信息包括车辆数量,车型;每个车辆配送至少一个收货站点的货物。
[0021]根据本发明的一个实施例,在步骤SI中,还提供控制信息,在步骤S2中,采用启发式算法对所述货单信息、车辆信息及控制信息进行处理,获得若干初始计划,所述控制信息包括司机工作时间、车辆运输后是否返回、客户的反馈信息。
[0022]根据本发明的一个实施例,所述启发式算法包括最近插入法、节约里程法、局部搜索算法、遗传算法、模拟退火算法、人工神经网络、禁忌搜索算法。
[0023]采用上述技术方案后,本发明相比现有技术具有以下有益效果:通过现有的启发式算法求解VRP问题,实现初步的车辆调度分配,获得若干的初始计划,在各初始计划中,每辆车辆均被组织有适当的行车路线,负责该行车路线上的各收货站点的货物运输,但是该初步分配的近似最优解事实上还可进一步进行优化,因而本发明在此基础上,进一步进行修正计划,建立一个虚拟市场,将各初始计划中的车辆作为虚拟车辆,各虚拟车辆将各自计算出来的最劣任务定价抛到虚拟市场中交易,各虚拟车辆从虚拟市场中获取待交易任务并计算其中对自己来说产生效益的最优任务,向虚拟市场进行竞价,虚拟市场将待交易任务交易给出价最高的虚拟车辆,经过虚拟市场一定的交易后,各个虚拟司机手上的运输任务都会更近似于最优解,优化了车辆调度,实现配送的效率及利润最大化。
【附图说明】
[0024]图1是本发明实施例的货物配送的车辆调度方法的流程示意图;
[0025]图2是本发明一实施例的货物配送的车辆调度方法的架构示意图;
[0026]图3是本发明另一实施例的货物配送的车辆调度方法的架构示意图。
【具体实施方式】
[0027]为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图对本发明的【具体实施方式】做详细的说明。
[0028]在下面的描述中阐述了很多具体细节以便于充分理解本发明。但是本发明能够以很多不同于在此描述的其它方式来实施,本领域技术人员可以在不违背本发明内涵的情况下做类似推广,因此本发明不受下面公开的具体实施的限制。
[0029]参看图1,本实施例的货物配送的车辆调度方法,包括以下步骤:
[0030]S1:接收多个货单信息,并提供车辆调度中心的车辆信息;
[0031]S2:采用启发式算法对所述货单信息、车辆信息进行处理,获得若干初始计划,每个初始计划包含一车辆及其所需处理的运输任务;
[0032]S3:根据各初始计划将每个车辆虚拟成为虚拟司机,并构建一用于各虚拟司机交易各自的运输任务的虚拟市场,所述虚拟市场中具有任务交易列表和市场时钟;
[0033]S4:在每一次交易前,各虚拟司机对各自的最劣任务进行价值标记后传输给所述虚拟市场,作为待交易任务保存至所述任务交易列表中;
[0034]S5:各虚拟司机获取所述任务交易列表中的待交易任务并选取适合各自运输条件的任务,对各自所选的任务进行价值标记后向虚拟市场发出交易请求,若虚拟市场中没有收到任何交易请求,则交易停止;
[0035]S6:所述虚拟市场根据各虚拟司机所选的任务的价值,选择其中标记价值最高的进行交易,交易完成后市场时钟变化一定值;
[0036]S7:若市场时钟达到预设截止值时则交易停止,输出结果,将各虚拟车辆经交易后的运输任务对应分配给各车辆,完成车辆调度,否则返回步骤S4。
[0037]本发明可以适用于多限制条件、多车辆的货物配送的车辆调度,多限制条件例如是收货时间点的限制、运送车辆载重、体积等的限制,下面结合图1-3对本发明的货物配送的车辆调度方法做出更进一步的说明,但不应以此作为限制。
[0038]步骤SI和S2是根据现有的启发式算法求解VRP问题,获得初步分配后的若干初始计划。启发式算法例如可以是最近插入法、节约里程法、局部搜索算法、遗传算法、模拟退火算法、人工神经网络、禁忌搜索算法。
[0039]在步骤SI中,首先获得多个货单彳目息,货单彳目息是收货方根据其收货地址、收货时间、所需货物量等而定制的信息,还提供车辆调度中心的车辆信息。具体的,货单信息可以包括收货站点、收货时间、货物重量、货物数量、货物体积;车辆信息可以包括车辆数量,车型。每个车辆配送至少一个收货站点的货物,为了提高配送效率,一般来说,每个车辆都会配送多个收货站点所需的货物,也就是在运送过程中,会在不同的收货站点卸下一定的货物量,由于存在多个站点,因而需要一条较为优化的运送路径,而由于具有众多的运送车辆,因而,还需要将每个车辆调度在较为优化的运送路径上,并分配给合理的货物量。
[0040]在步骤S2中,采用启发式算法对货单信息、车辆信息进行处理,根据收货站点的时间窗安排运送车辆,每辆车合理地安排多个站点的货物配送,为每辆车确定一条近似最优的配送路径,从而获得若干初始计划,每个初始计划包含一车辆及其所需处理的运输任务。当然,在不考虑运算数据处理时间的情况下,也可以简单地随机将各任务分配给车辆,使得每辆车辆获得几个任务及一运送路线,但该分配不是近似优化的,所有的优化交给步骤S3-S7来实现。
[0041]简单来说,步骤SI和S2是为了将配送车队进行初步调度,每个车辆负责运送一定的货物到一定的收货地点,采用启发式算法可以使得每个车辆的运送路径、货物量尽量地优化。
[0042]参看图3,在一个实施例中,在步骤SI中,还提供控制信息,在步骤S2中,采用启发式算法对货单信息、车辆信息及控制信息进行处理,获得若干初始计划,控制信息包括司机工作时间、车辆运输后是否返回、客户的反馈信息,将车辆的运送时间分配在司机工作时间内,且根据客户的反馈信息,例如满意度等适当地调整配送车辆,根据车辆运输后是否返回可以给车辆分配返回的运送路径等。
[0043]在实际操作过程中,很有可能存客户重复下单或者下错单的情况,而在车辆配送时需要将这些货单删除,否则会影响配送效率,因而可选的,在步骤SI和S2之间还包括步骤Sll:对货单信息进行数据处理,将重复的货单合并或错误的货单滤除。重复的货单可以通过数据匹配分析来确定,而错误的订单可以通过明显的错误确定,明显错误例如是该货单为空单。
[0044]采用快速的且相对有效的启发式算法,把原本计算量庞大的且复杂的问题快速分解成颗粒度较小的初级解,启发式算法求解VRP问题,获得初步分配后的若干初始计划,这些初始计划在一定程度上还存在着毛刺。由于在分配时,会将小型车辆优先分配,所以可能存在这样的现象,当一小型车辆的运送路线上的某个站点更为适合靠近该站点的一大型车辆(另一条运送路线上)来配送时,但是该站点已经分配给小型车辆了,限制了小型车辆为其他更合适的站点进行配送,也限制了该大型车辆来配送该更适合于它配送的站点的货物,因而需要通过修正计划来获得更为优化的配送调度方式。
[0045]通过构建虚拟市场和虚拟司机的方式来实现该修正计划。在步骤S3中,根据各初始计划将每个车辆虚拟成为虚拟司机,虚拟司机依旧被分配有对应车辆的运输任务,还构建一虚拟市场,虚拟现场用于各虚拟司机交易各自的运输任务,虚拟市场中具有一任务交易列表和市场时钟,任务交易列表用来存储各虚拟司机跑出来的待交易热舞,而市场时钟则用来限制交易的次数,因为虚拟司机一般会一直存在一个最劣任务,若不限制交易次数可能交易会一直持续下去,但在一定的交易次数后,车辆调度已近似于最优了,市场时钟的具体数值可以根据实际进行配置。
[0046]在虚拟的过程中不同的司机车辆会注入对应的策略,每一个虚拟司机的策略会影响后续虚拟司机在市场交易过程中对自身任务的评价,也就是确定最劣任务和最优任务。
[0047]在步骤S4中,在每一次交易前,各虚拟司机会对各自的最劣任务进行价值标记,价值标记也可称作标价,由于是虚拟的,因而可以通过一定的数值来表示,然后将标价的最劣任务发布到虚拟市场上,虚拟市场会将接收的各虚拟司机的最劣任务作为待交易任务保存至任务交易列表中。
[0048]具体的,在步骤S4中,最劣任务的计算方式是判断收益比,司机每一次执行任务会回获得相应的酬劳,但同时会花销相应的代价。一个虚拟司机完成其全部任务所获得的酬劳和完成任务所花销的成本可以得到一个收益比值,这就是收益比。每次舍弃一个任务后这个收益比都会发生变化,逐个尝试任务被舍弃,而获得的收益比会存在高低,因而可得到收益比最低的任务作为最劣任务。换言之,各虚拟司机通过判断收益比来确定各自的最劣任务,轮流舍弃一个任务后该虚拟司机完成全部剩余任务所能获得的酬劳与所花销的成本的比值作为收益比,收益比最低的运输任务作为最劣任务。
[0049]在步骤S5中,开始竞价阶段,各虚拟司机获取虚拟市场的任务交易列表中的待交易任务,并从中选取适合各自运输条件的最优任务,也就是说该任务对于原虚拟司机来说是最劣的而对于选取该任务的司机来说是最优任务,选择好任务后对各自所选的任务进行价值标记,并将向虚拟市场发出交易请求,类似于竞标,若虚拟市场中没有收到任何交易请求,则交易停止,输出调度结果。
[0050]在步骤S5中,虚拟司机从待交易任务中选取适合各自运输条件的任务具体来说,每个虚拟司机将获得的待交易任务轮流加入到自己的运输任务中,加入之后,该虚拟司机完成全部运输任务所能获得的酬劳与所花销的成本的比值作为收益比,选择使得收益比最高的待交易任务作为适合该虚拟司机运输条件的任务,将该收益比最高的待交易任务进行价值标记,该价值标记同样可以是通过一定的数值进行标价,标价之后向虚拟市场发出该待交易任务的交易请求。
[0051]较佳的,为了减小计算量,加快调度速度,在步骤S5中,各虚拟司机可以将已计算过收益比的待交易任务关联保存在该虚拟司机中,虚拟司机在后续获取任务交易列表中的待交易任务时,仅将未计算过收益比的待交易任务加入到该虚拟司机的运输任务中计算收益比,而不重新计算那些已经计算过收益比的待交易任务。
[0052]在步骤S5中,各虚拟司机对所选的任务的价值标记根据该任务即加入到该虚拟司机的运输任务中计算的收益比而定,收益比越高则标记的价值越大。虚拟司机在对虚拟市场上所有的待交易任务进行竞标出价的时候,实际上是将虚拟市场上的待交易任务加入自身的任务集合后所能够带来的额外收益,额外的收益即可作为所出竞价。从而虚拟市场能够将待交易任务分配给最具配送优势的虚拟司机。
[0053]在步骤S6中,虚拟市场根据各虚拟司机所选的任务的价值,选择其中标记价值最高的一个进行交易,让原持有此任务的虚拟司机释放此任务,中标的虚拟司机获取此任务,交易完成后市场时钟变化一定值,例如市场时钟可以减一。
[0054]在步骤S7中,当市场时钟达到预设截止值时,例如市场时钟减到0,则交易停止,输出结果,也就是输出调度的最终值,根据输出结果进行实际的车辆任务分配,将各虚拟车辆经交易后的运输任务对应分配给各实际的车辆,完成车辆调度,若市场时钟还没有达到预设截止值则返回步骤S4,继续在虚拟市场中进行交易。
[0055]在一个实施例中,参看图3,在步骤S7中,在完成车辆调度后,将车辆的调度信息反馈至步骤S2中,采用启发式算法对货单信息、车辆信息及历次车辆调度信息进行处理,获得若干初始计划。在初始计划分配时,考虑到历次车辆调度信息,尽量将司机分配在同一路线上,或分配给同一收货站点,以使司机驾轻就熟。
[0056]本发明虽然以较佳实施例公开如上,但其并不是用来限定权利要求,任何本领域技术人员在不脱离本发明的精神和范围内,都可以做出可能的变动和修改,因此本发明的保护范围应当以本发明权利要求所界定的范围为准。
【主权项】
1.一种货物配送的车辆调度方法,其特征在于,包括以下步骤: S1:接收多个货单信息,并提供车辆调度中心的车辆信息; S2:采用启发式算法对所述货单信息、车辆信息进行处理,获得若干初始计划,每个初始计划包含一车辆及其所需处理的运输任务; S3:根据各初始计划将每个车辆虚拟成为虚拟司机,并构建一用于各虚拟司机交易各自的运输任务的虚拟市场,所述虚拟市场中具有任务交易列表和市场时钟; S4:在每一次交易前,各虚拟司机对各自的最劣任务进行价值标记后传输给所述虚拟市场,作为待交易任务保存至所述任务交易列表中; S5:各虚拟司机获取所述任务交易列表中的待交易任务并选取适合各自运输条件的任务,对各自所选的任务进行价值标记后向虚拟市场发出交易请求,若虚拟市场中没有收到任何交易请求,则交易停止; S6:所述虚拟市场根据各虚拟司机所选的任务的价值,选择其中标记价值最高的进行交易,交易完成后市场时钟变化一定值; S7:若市场时钟达到预设截止值时则交易停止,输出结果,将各虚拟车辆经交易后的运输任务对应分配给各车辆,完成车辆调度,否则返回步骤S4。2.如权利要求1所述的货物配送的车辆调度方法,其特征在于,在所述步骤SI和S2之间还包括步骤Sll:对所述货单信息进行数据处理,将重复的货单合并或错误的货单滤除。3.如权利要求1所述的货物配送的车辆调度方法,其特征在于,在所述步骤S4中,各虚拟司机通过判断收益比来确定各自的最劣任务,轮流舍弃一个任务后该虚拟司机完成全部剩余任务所能获得的酬劳与所花销的成本的比值作为收益比,收益比最低的运输任务作为最劣任务。4.如权利要求1所述的货物配送的车辆调度方法,其特征在于,在所述步骤S5中,每个虚拟司机将获得的待交易任务轮流加入到该虚拟司机的运输任务中,该虚拟司机完成全部运输任务所能获得的酬劳与所花销的成本的比值作为收益比,选择使得收益比最高的待交易任务作为适合各自运输条件的任务进行价值标记,向虚拟市场发出该待交易任务的交易请求。5.如权利要求4所述的货物配送的车辆调度方法,其特征在于,在所述步骤S5中,各虚拟司机将已计算过收益比的待交易任务关联保存在该虚拟司机中,后续获取所述任务交易列表中的待交易任务时,仅将未计算过收益比的待交易任务加入到该虚拟司机的运输任务中计算收益比。6.如权利要求4所述的货物配送的车辆调度方法,其特征在于,在所述步骤S5中,各虚拟司机对所选的任务的价值标记根据该任务即加入到该虚拟司机的运输任务中计算的收益比而定,收益比越高则标记的价值越大。7.如权利要求1所述的货物配送的车辆调度方法,其特征在于,在步骤S7中,在完成车辆调度后,将车辆的调度信息反馈至步骤S2中,采用启发式算法对所述货单信息、车辆信息及历次车辆调度信息进行处理,获得若干初始计划。8.如权利要求1或7所述的货物配送的车辆调度方法,其特征在于,所述货单信息包括收货站点、收货时间、货物重量、货物数量、货物体积;所述车辆信息包括车辆数量,车型;每个车辆配送至少一个收货站点的货物。9.如权利要求1所述的货物配送的车辆调度方法,其特征在于,在步骤SI中,还提供控制信息,在步骤S2中,采用启发式算法对所述货单信息、车辆信息及控制信息进行处理,获得若干初始计划,所述控制信息包括司机工作时间、车辆运输后是否返回、客户的反馈信息。10.如权利要求1所述的货物配送的车辆调度方法,其特征在于,所述启发式算法包括最近插入法、节约里程法、局部搜索算法、遗传算法、模拟退火算法、人工神经网络、禁忌搜索算法。
【文档编号】G06Q10/08GK105825358SQ201610149136
【公开日】2016年8月3日
【申请日】2016年3月16日
【发明人】孙阳
【申请人】上海久耶供应链管理有限公司