具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明的目的是提供一种定制家具物流配送的多目标路径规划方法及系统,对定制家具物流配送过程进行合理的路径规划,提高个性化定制家具配送能力,缩短交货周期,降低人工成本。
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
实施例1:
本实施例用于提供一种定制家具物流配送的多目标路径规划方法,如图1所示,所述多目标路径规划方法包括:
S1:建立目标函数;所述目标函数为客户需求满意度、车辆配送成本和客户总服务时间的加权函数;
由于本实施例包括三个优化目标,为了消除客户需求满意度、车辆配送成本和客户总服务时间这三个优化目标的数量级差距带来的影响,对三个优化目标均取对数,取对数后,不会改变数据的性质和相关关系,但缩小了变量的尺度,使得数据更加平稳,并可将多目标优化问题转化为单目标优化问题。
则本实施例的目标函数如下:
F=ω1lg(1-G)+ω2lgC+ω3lgTd; (1)
式(1)中,F为目标函数;ω1为第一折合因子;G为客户需求满意度;ω2为第二折合因子;C为车辆配送成本;ω3为第三折合因子;Td为客户总服务时间。
需要说明的是,第一折合因子、第二折合因子和第三折合因子分别表示在蚁群算法优化过程中客户需求满意度、车辆配送成本和客户总服务时间的重要程度,可以根据实际情况适当调整三个折合因子的大小,但需要满足ω1+ω2+ω3=1。
本实施例中,每个客户都有期望的安装时段(即客户期望配送时段),且客户具备不同优先级。配送车辆到达第i份客户订单对应的客户期望配送地点的时间为Ti,第i份客户订单对应的客户期望配送时段为[Timin,Timax],在该客户期望配送时段内到达客户期望配送地点,则客户的满意度Gi最高,满意度Gi的取值范围为[0,1]。
则客户需求满意度的计算公式为:
式(2)中,Gi为第i份客户订单的满意度;i=1,2,...,N;N为客户订单的总份数;
式(3)中,Ti为第i份客户订单对应的到达时间,即配送车辆到达第i份客户订单对应的客户期望配送地点的时间;Timin为第i份客户订单对应的客户期望配送时段的最早时间;Timax为第i份客户订单对应的客户期望配送时段的最晚时间。
本实施例中,车辆配送成本分为固定成本和可变成本,可变成本随着车辆行驶里程数、行驶时间以及为客户服务的服务等待时间的变化而变化。
则车辆配送成本的计算公式为:
C=p1q1+p2s+p3t+p4t0; (4)
式(4)中,p1为车辆使用数量;q1为每辆车的固定费用;p2为单位里程所需费用;s为配送车辆行驶总里程;p3为单位时间消耗成本;t为行驶总时长;p4为配送车辆等待成本;t0为配送车辆等待时间。
需要说明的是,本实施例规划得到的是一条从起点(加工工厂配送中心)运动至终点(客户期望配送时段最晚的客户订单对应的客户期望配送地点)的运动路径,但考虑到单个配送车辆服务能力有限,因此需要多辆车共同协作,每一辆车负责几个客户订单,具体负责的客户订单由车辆装货量决定。将一条从起点沿各个客户期望配送地点运动至终点的路径拆分成若干个小路径,小路径的大小取决于车辆装货量,每个小路径由一辆车负责。
本实施例中,对于选定到达终点Ia,从出发起点Ib出发有R条路径可到达,可计算路径上的行驶时间。配送车辆到达Ia,需要在Ia进行上门服务,因此上门服务时间与路径行驶时间之和即为Ia的总服务时间,配送车辆需将所有的客户订单配送完成才算完成任务。
则客户总服务时间的计算公式为:
式(5)中,Ti,d为第i份客户订单的总服务时间;i=1,2,...,N;N为客户订单的总份数;
Ti,d=tv+ta; (6)
式(6)中,tv为到达第i份客户订单对应的客户期望配送地点的行驶时间,需要说明的是,本实施例是规划从加工工厂配送中心开始依次遍历各个客户期望配送地点的路径,故此处到达第i份客户订单对应的客户期望配送地点的起点是指加工工厂配送中心或者任一个其他的客户期望配送地点;ta为第i份客户订单的服务时间。
本实施例中,配送车辆的行驶速度随着通行时段、道路类型的变化而变化。对道路类型进行分类,按照道路功能可主要分为以下四类:快速道路类、干线道路类、集散道路类和本地道路类;对通行时段进行分类,按照拥挤程度可分为以下三种类型:高峰期Tpp、平峰期Tfp、低峰期Tlp。在一种道路类型和一种通行时段内假定车辆匀速行驶,则行驶速度与通行时段、道路类型的关系如表1所示。
表1行驶速度与通行时段、道路类型的关系
表1中,各个行驶速度可根据实际情况进行设定。
则本实施例在计算两个节点(节点指加工工厂配送中心和客户期望配送地点)之间的行驶时间时,将两个节点之间的路径按照道路类型拆分为若干个路段,所用的计算公式为:
式(7)中,ti为第i个路段的行驶时间;i=1,2,...,k;k为按照道路类型对到达第i份客户订单对应的客户期望配送地点的路径进行划分所得到的路段的总个数;
式(8)中,di为第i个路段的里程;vm,n为在通行时段m和道路类型n下的行驶速度。
S2:以所述目标函数最小为优化目标,利用蚁群算法对待配送订单进行优化求解,得到所述待配送订单的最优配送方案;所述待配送订单包括多份客户订单以及每一份所述客户订单对应的客户期望配送时段和客户期望配送地点。
本实施例可从加工工厂获取当日待配送订单,共N份客户订单,每一份客户订单包括:客户配送数量、客户期望配送时段、客户期望配送地点、配送包裹编号。
具体的,如图2所示,S2可以包括:
(1)构建地图,地图包括起点和多个客户节点,起点为加工工厂配送中心,客户节点为客户期望配送地点;
(2)初始化地图的信息素浓度;
在第一次迭代时,将地图的信息素浓度置为0,以初始化地图的信息素浓度;
在第A次迭代时,按照目标函数值从小到大的顺序,对上一次迭代中的所有蚂蚁进行排序,对排序位于前设定百分比的蚂蚁的配送路径的信息素浓度进行叠加,以初始化地图的信息素浓度,A大于1。前设定百分比可为20%。
(3)对于每一只蚂蚁,根据状态转移概率从起点依次遍历各客户节点,生成蚂蚁对应的配送方案;配送方案包括配送路径和到达各个客户节点的时间;在遍历各客户节点时,每到达一客户节点,则对客户节点与其上一节点之间的路径的信息素浓度进行更新,遍历结束后,得到蚂蚁对应的配送路径的信息素浓度;节点为起点或客户节点;
本实施例以经度、纬度、时间为轴,构建三维蚁群模型,搜索点随时间而变化,前进速度随实际路程而变化。采用随机性选择和确定性选择相结合的策略,自适应性调整状态转移概率,引导蚁群算法探索最优路径和提高蚁群算法的收敛性能。
每只蚂蚁的爬行方向由路径上信息素浓度和距离启发函数确定,即状态转移过程,在路径搜索过程中,通过信息素浓度和启发信息计算状态转移概率,并用路径表存储蚂蚁所经过的客户节点,遍历结束后,根据路径表确定配送方案。蚂蚁在当前时刻从当前节点i转移到下一个节点j的状态转移概率由路径上的信息素浓度和距离启发函数确定,每个客户节点仅能被选择一次。
状态转移概率的表达式如下:
式(9)中,
为第k只蚂蚁从节点i运动至节点j的状态转移概率;τ
i,j(t)为当前次迭代t时刻节点i到节点j的路径上的信息素浓度;α为路径上信息素积累量;
为从节点i运动至节点j的一条路径,代表以客户满意度、配送成本和运输时间为引导的启发信息,其分别根据式(3)、式(4)和式(6)计算得到;β为启发信息的权重比;J
k(i)表示第k只蚂蚁下一步允许选择的客户节点,也即未被选择过的客户节点,这是由于每个客户节点仅允许选择一次。
根据式(9)即可确定蚂蚁下一步可选择的客户节点,不断执行式(9),直至每一客户节点均已被选择,则可以生成蚂蚁对应的配送方案。
针对不同时间,对应客户满意度最高的节点信息素浓度最高,当前时间在客户期望配送时段内,该客户节点信息素浓度就越高,越不接近客户期望配送时段,该客户节点信息素浓度就越低。
则每到达一客户节点,对客户节点与其上一节点之间的路径的信息素浓度进行更新,即实时信息素更新的表达式如下:
τi,j(t)=(1-ρ)τi,j-1(t)+ρτi,j(t-1)+ηGjXi,j; (10)
式(10)中,τi,j(t)为当前次迭代t时刻节点i到节点j的路径上的信息素浓度;ρ为信息素挥发因子;τi,j-1(t)为当前次迭代t时刻节点i的信息素浓度;τi,j(t-1)为上一次迭代t时刻节点i到节点j的路径上的信息素浓度;η为客户节点满意度系数;Gj为节点j的满意度,其根据式(3)计算得到;Xi,j为当前时间客户节点满意度决策函数。
式(11)中,最高满足度区间即为客户期望配送时段。
遍历结束后,得到蚂蚁对应的配送路径的信息素浓度。
(4)以配送方案作为目标函数的输入,计算每一只蚂蚁的目标函数值;
本实施例以蚂蚁代替车辆为客户服务,蚂蚁从加工工厂配送中心出发,服务客户,直到所有客户节点都得到一次服务,此时该蚂蚁完成一次遍历。当所有蚂蚁完成一次遍历后,对所有蚂蚁进行排序,选出目标函数值最小的优良蚂蚁,并将其路径的信息素浓度加大,加快算法收敛速度。
(5)选取目标函数值最小的蚂蚁作为最优蚂蚁;判断最优蚂蚁的配送路径总长度是否处于上一次迭代的预设阈值范围内;若是,则以最优蚂蚁的配送路径作为最优路径;若否,则以上一最优路径作为最优路径;根据最优路径确定当前次迭代的预设阈值范围;
设定每次允许更新的预设阈值范围为(U,L),在每一次迭代后,若当代最优蚂蚁遍历完所有客户节点的配送路径总长度在上一次迭代的预设阈值范围内,则将此最优蚂蚁的配送路径作为最优路径,进行路径信息素更新,否则以上一代最优路径作为最优路径,进行路径信息素更新。
根据最优路径确定当前次迭代的预设阈值范围的表达式如下:
式(12)中,Lbest为当前全局最优路径长度,即最优路径的长度;f为更新阈值系数;LD为全局规划起点到规划终点的欧氏距离。
(6)对于每一只蚂蚁,判断所述蚂蚁的配送路径的长度是否处于当前次迭代的预设阈值范围内;若是,则对所述蚂蚁的配送路径的信息素浓度进行更新;
路径信息素更新的表达式如下:
式(13)中,τi,j(t+1)表示下一次迭代中t时刻节点i到节点j之间的路径的信息素浓度;
本实施例在一次迭代中,信息素浓度的更新主要分为两部分,包括实时信息素更新和路径信息素更新,其中实时信息素更新是在每个蚂蚁选择客户节点之后进行更新,如式(10),路径信息素更新是在每个蚂蚁遍历完所有客户节点之后进行更新,如式(13)。随着循环的推进,较短的路径上累积的信息素浓度逐渐增高,选择该路径的蚂蚁个数也愈来愈多。
(7)判断是否达到预设迭代终止条件;若是,则结束迭代,以最优蚂蚁对应的配送方案作为最优配送方案;若否,则返回“初始化地图的信息素浓度”的步骤。
本实施例的预设迭代终止条件可为:1)当前蚁群算法优化目标函数值小于预定最优蚁群算法优化目标函数值;2)连续三代蚁群算法优化目标函数值的均值小于预定最优蚁群算法优化目标函数值的均值,且当前蚁群算法优化目标函数值的方差小于预定最优蚁群算法优化目标函数值的方差;3)迭代次数达到最大迭代次数。当满足任一个条件,则结束迭代,获得最优配送方案,配送人员即按此最优配送方案进行配送。
信息素挥发因子表示信息素浓度的挥发减少程度,它影响蚁群算法全局搜索能力和收敛速度。本实施例中,信息素挥发因子随迭代次数发生变化。在算法前期,将信息素挥发因子设置较大,使蚁群算法具有较强的全局搜索能力,在达到一定迭代次数后,将信息素挥发因子逐渐减小,使蚁群算法具有较好的收敛速度。
信息素挥发因子的表达式如下:
式(15)中,n为当前迭代次数;NCmax表示最大迭代次数。
本实施例以个性化定制家具配送路径优化为基本目标,为大规模个性化定制家具的物流配送提供一种多目标路径规划方法,以提高个性化定制家具的配送能力、生产全流程执行效率,更好地为客户服务,提升品牌竞争力。除应用于定制家具物流配送的路径规划,也可以用于生鲜外卖配送路径规划,多仓库车辆路径规划,无人机避障突防飞行等多个方面。
实施例2:
本实施例用于提供一种定制家具物流配送的多目标路径规划系统,如图3所示,所述多目标路径规划系统包括:
目标函数构建模块M1,用于建立目标函数;所述目标函数为客户需求满意度、车辆配送成本和客户总服务时间的加权函数;
蚁群算法优化求解模块M2,用于以所述目标函数最小为优化目标,利用蚁群算法对待配送订单进行优化求解,得到所述待配送订单的最优配送方案;所述待配送订单包括多份客户订单以及每一份所述客户订单对应的客户期望配送时段和客户期望配送地点。
本说明书中每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的系统而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处。综上所述,本说明书内容不应理解为对本发明的限制。