• 欢迎访问3777金沙娱场城在线官方网站
货物查询

全国咨询热线400-663-9099
3777金沙娱场城在线

响应用户随机需求下远距离物流配送调度仿真

字号:T|T
文章出处:作者:人气:-发表时间:2024-06-13 11:39:00

 1 引言

远距离物流配送调度指在物流配送中心给定配送任务的情况下,如何派车、组织运输可以确保配送路程最短且运输成本最低[1,2]。现阶段,我国大部分的物流企业在资源运输过程中存在分配不均匀和配送线路安排不合理等问题,导致运力资源严重浪费,而缺乏完整的远距离物流配送调度方案是造成上述现象出现的重要因素,所以研究远距离物流配送调度具有十分重要的研究意义。
 
基于上述背景,为了减少成本、提高效率,国内相关专家针对远距离物流配送调度方面的问题展开了大量研究,例如:杜子超等人[3]构建众包配送车辆调度模型,引入蚁群—量子粒子群混合优化算法对模型求解,确定车辆调度方案;黄逸文等人[4]分析物流系统的运行特性,构建物流协同调度模型,对模型协同优化处理,进而获取最佳调度方案;曹志鹏等人[5]提出一种全新的动态调度方法,通过局部搜索算法确定最终车辆动态调度方案。
 
在以上几种研究算法的基础上,提出了一种响应用户随机需求的远距离物流配送调度算法。仿真分析表明,所提算法可以大幅度提升用户满意度以及调度效率,更好地解决远距离物流配送调度问题。
 
2 算法
2.1 构建远距离物流配送调度模型
由于在实际物流配送过程中,受到订单量的波动、用户临时需求的变化等影响,用户的需求往往是随机而变的[6,7]。为了更真实地模拟现实物流运输环境,需要考虑响应用户随机需求,设置真实用户与虚拟用户,以此构建远距离物流配送调度模型,从而制定调度方案,优化配送调度。
 
通常物流配送系统包含一个配送中心和多个用户,主要通过专业的物流配送车辆进行服务。将远距离起始时间设定为t0,配送结束时间为t1。在t0时刻之前出现的用户被称为真实用户,为了降低配送成本并更好地服务于在t0时间后随机出现的用户,中间某个时间段设定为tn。根据用户以往的需求信息,预测在(t0,tn)时间段内配送区域内可能出现需求的用户,并将这些用户称为虚拟用户。结合虚拟用户和真实用户,制定远距离物流配送调度方案。假设没有出现虚拟客户需求,则继续按照原始配送方案配送;反之,则需要将车辆朝着下一个虚拟需求用户出现的方向行驶,如果后续并没有虚拟用户出现,则直接返回至物流配送中心。对于在tn之后出现的客户需求,由于无法及时满足用户的配送时间需求,所以可以将其作为设定为下一配送计划的真实用户需求。
 
在实际远距离物流配送调度过程中,考虑响应用户随机需求的情况下,需要作出以下假设:
 
1)物流配送车辆的数量有限。
 
2)物流配送车辆的容量和承载能力是完全相同的。
 
3)车辆从配送中心出发,完成物流配送服务后直接返回至配送中心。
 
4)每个用户只可以由1辆车展开远距离物流配送服务。
 
5)在(t0,tn)期间随机出现需求的用户可以利用汇集以及预测获取。
 
6)不同用户的需求发生是相互独立的。
 
通过上述分析,由于需要全面考虑用户分布情况,可以将设定的物流配送区域划分为多个栅格,每个栅格代表用户区域,根据配送区域人口密度大小确定栅格单元规模,其中在一个栅格内的用户即为同一个配送区域。远距离物流配送区域栅格图和集群示意图如图1所示。除了历史没有出现用户的栅格和物流配送服务开始前期已经出现的真实用户所在栅格,剩余的栅格ai可能随机出现的用户需求。
 
图1 远距离物流配送栅格图和集群示意图   下载原图
 
为了解不同时间段的需求强度和波动性,计算历史时间段内的用户需求概率,确定合适的车辆调度策略。统计检验各个栅格ai在设定单位时间出现用户需求的概率β(zs),则集群c在历史时间段内的用户需求概率β(zc)可以表示为式(1)的形式:
 
 
式中,n表示单位时间内出现用户需求的次数。如果β(zc)的取值大于等于给定的经验概率数值C(minβ),则代表集群中存在随机需求的虚拟用户;反之,不存在虚拟用户。对剩下的全部栅格遍历处理,删除无法形成虚拟用户的栅格和集群。
 
为确保每个栅格只属于一个集群,需要将栅格群内重叠的集群删除,根据β(zc)计算结果,获取虚拟用户,全部虚拟用户的集合为:
 
Btemp={c|β(zc)≥C(minβ)|∪c|β(zc)≥C(minβ)|}   (2)
 
式中,σ(i)表示集群Btemp含栅格总需求量的标准差;ha,b代表集群Btemp含栅格总需求量的平均值;θi,j代表置信水平系数。
 
考虑到物流企业在物流配送过程中不同类型用户对时间窗的需求,如果物流配送时间到达配送点的时间早于设定的时间窗,则需要在原地等待直至时间窗开启,将耗费时间成本。为此,将惩罚系数ψa,b,c引入到远距离物流配送调度中,分析配送延迟对用户满意度产生的影响。将远距离物流配送调度时间最短和用户满意度为目标,根据虚拟用户的需求量,构建目标函数。远距离物流配送调度时间Zij和用户满意度top对应的计算式如下:
 
 
上式中,zf代表客户的惩罚成本;pk代表广义用户满意度系数;ωa代表车辆到达客户a的时间窗;tup代表随机两个用户之间的时间窗;tcx代表远距离物流配送延迟。
 
为了优化配送方案,提高用户满意度和效益,根据远距离物流配送调度时间最小minZij和用户满意度最大maxtop为依据,按照车辆先真实后虚拟用户配送的原则,构建响应用户随机需求的远距离物流配送调度模型?,如式(6)所示:
 
 
2.2 远距离物流配送调度模型求解
为了得到最优的配送方案,通过求解远距离物流配送调度模型,以确定最佳的车辆配送路线、出发时间和资源分配,最大程度地满足用户需求并降低运营成本。PSO算法[8,9]8-9]是基于全局最优以及个体最优的目的不断变换速度以及位置更新,整体的操作过程十分简单,并且还具有比较高的搜索效率,在寻优过程中具有比较好的寻优能力。种群中所有粒子的飞行方向都是通过全局最优极值来确定的,由于迭代到设定次数后,种群中所有粒子都会被限制在一个比较小的范围内,详细的飞行状态如图2所示:
 
图2 PSO算法迭代前后粒子状态图   下载原图
 
在迭代前后粒子状态中,假定搜索对象是由m个粒子构成的群体,从而得到最佳定位。在一个群体中,单个粒子的状态可以用其位置和速度来描述。粒子在每次迭代后更新的位置和速度计算式如下:
 
{vt+1ij=ω⋅vtij+c1r1⋅(ptij−xtij)+c2r2⋅(gtij−xtij)xt+1ij=xtij+vt+1ij   (7)
 
代表粒子在完成第t次迭代处理后得到粒子的速度;xtij
i
j
t
代表粒子在完成第t次迭代处理后得到粒子的位置;ω代表惯性权重;c1和c2代表学习因子;r1和r2代表在[0,1]内的随机系数;ptij
i
j
t
代表个体最优;gtij
i
j
t
代表全局最优。
 
细菌搜索(Bacterial Foraging Optimization,BFO)算法[10,11]10-11]基于大肠杆菌趋利避害的搜索行为,得到一种基于群体智能的新算法。结合对大肠杆菌的研究,可以获取整个优化算法的详细操作步骤:
 
1)大肠杆菌在自然界中随意游荡,寻找潜在的食源;
 
2)确定是否进入了一个食物源地带,若为营养丰富,则继续进行,并进入这个地带;否则,就必须改变运动的方向。
 
3)在捕食的过程中,适当地调整自己的移动方向,向更多的食物来源地迁移。
 
在细菌觅食过程中,将细菌的趋化觅食过程中状态更新公式表示如下形式:
 
xt+1i=xt+1i+s(i)N(φt+1i)   (8)
 
代表在t+1时段通过随机函数形成的任意角度;xt+1i
i
t
+
1
代表细菌个体i在t+1时段内完成一次趋化行为后的位置;s(i)代表角度对应的标准化函数;N(·)代表细菌个体的移动步长。
 
由于PSO算法相对而言更容易陷入局部最优值,而BFO算法具有较强的全局搜索能力,能够通过模拟细菌觅食的行为,更好地探索整个搜索空间,从而找到更优的解。因此,将BFO算法加入到PSO算法中,改进PSO算法[12,13]12-13]。结合上述分析,采用改进PSO算法对基于响应用户随机需求的远距离物流配送调度模型求解,详细的操作步骤如下:
 
1)初始化:
 
设定改进PSO算法[14,15]14-15]中的参数,将群体中的粒子数量设定为m, 最大迭代次数设定为umax,根据实际调度需求设定粒子的速度变化范围为[vmin,vmax],对群体中各个粒子的位置以及速度初始化处理,同时经过搜索确定全局和个体最优。
 
2)计算不同个体的适应度取值:
 
计算群体中不同个体的适应度取值,选取最短远距离物流配送调度时间和最高用户满意度作为适应度函数;对比个体适应度函数与历史适应度函数最优值,假定适应度取值高于历史适应度,由此更新粒子最优值和全局最优值;相反,对优化结果无需进行扩展更新。
 
3)通过迭代处理,假设单一粒子的速度大于粒子最大速度,则需要对当前速度展开更新,将其表示为vmax;反之,如果vi