一种取送货问题的车辆路径规划方法技术

技术编号:32278461 阅读:6 留言:0更新日期:2022-02-12 19:45
一种取送货问题的车辆路径规划方法,首先根据待解决的带时间窗的取送货车辆路径问题,建立客户数据模型;然后计算车库、取货点及送货点中两两之间的距离,再建立带时间窗的取送货车辆路径问题的数学模型,然后基于取送货实际问题,建立带时间窗的取送货车辆路径问题的Petri网模型;再基于构建的Petri网模型,将数学模型转换为整数线性规划问题;然后在MATLAB中调用整数线性规划问题的相关程序进行求解和结果分析;本发明专利技术能够实现车库的车辆配送路线最优,同时使车辆的行驶总距离最短,较大程度地降低车辆运输成本,具有良好的应用前景。具有良好的应用前景。具有良好的应用前景。

【技术实现步骤摘要】
一种取送货问题的车辆路径规划方法


[0001]本专利技术属于物流配送
,具体涉及一种取送货问题的车辆路径规划方法。

技术介绍

[0002]在经济发展的推动下,现代物流已经成为企业管理的重要组成部分,不仅是因为在企业总成本中物流成本所占比例较高,而且企业的服务水平受物流活动影响较大。优秀的物流服务能够直接影响客户对企业的忠诚度,因此,降低物流消耗成本,提高物流运行效率是提高企业竞争力的有效措施。
[0003]在物流配送领域,车辆路径问题(Vehicle Routing Problem,VRP)是物流管理和运输中的核心问题之一,其研究受到人们的广泛关注。其中,取送货问题是一个具有较多应用场景的实际问题,如:残疾人及老年人的接送问题、海运调度问题等。在现实中,汽车货运业采用多种运输形态提供物流服务,其中一种为点对点运输,即客户提供物流信息要求货运公司派车至指定点取货再送至另一指定点卸货,此类问题被称作取送货问题(Pickup and Delivery Problem,PDP)。同时,为了提供快速、正确、准时的服务,采用具有时间窗限制的取送货问题(Pickup and Delivery Problem With Time Windows,PDPTW)的研究愈加重要。
[0004]带时间窗限制的取送货问题属于NP难问题,其求解方法包括精确算法和启发式算法。精确算法常见的有动态规划算法、分支定界法等,它主要求解小规模的PDPTW。启发式算法包括模拟退火法、禁忌搜索法、遗传算法等,它需要设计者具备较强的专业知识并且专用性比较强;另外,启发式方法往往得不到最优解。

技术实现思路

[0005]为了克服上述现有技术的缺点,本专利技术的目的在于提出一种取送货问题的车辆路径规划方法,能够实现车库的车辆配送路线最优,同时使车辆的行驶总距离最短,较大程度的降低车辆运输成本,具有良好的应用前景。
[0006]为了达到上述目的,本专利技术采用如下技术方案:
[0007]一种取送货问题的车辆路径规划方法,包括以下步骤:
[0008]步骤一、建立客户数据模型:根据待解决的带时间窗的取送货车辆路径问题,建立客户数据模型;
[0009]步骤二、计算车库、取货点及送货点中两两之间的距离d
i,j
,i≠j,同时假设两两之间的行驶时间均是单位1;
[0010]步骤三、建立带时间窗的取送货车辆路径问题的数学模型:根据实际的取送货订单需求,规划车库的车辆完成取送货任务,且客户订单的取货请求和送货请求都必须在一个时间窗内开始被服务;若车辆早于时间窗到达取货点或者送货点,则需要等到最早开始时间到临开始执行取送货任务;设计目标函数,目标函数是使车辆总的行驶距离最短;
[0011]步骤四、基于客户数据模型,建立带时间窗的取送货车辆路径问题的Petri网模
型;
[0012]步骤五、基于步骤四的Petri网模型,将步骤三的数学模型转换为整数线性规划问题;
[0013]步骤六、在MATLAB中调用步骤五整数线性规划问题的相关程序并进行求解和结果分析。
[0014]所述的步骤四带时间窗的取送货车辆路径问题的Petri网模型如下:
[0015]a)车库i=0、取货点i
+
={1,...,n}、送货点i

={n+1,...,2n}及控制点i

={2n+1,...,3n}用集合P来表示,P={p0,p1,...,p
3n
}表示车库、取货点、送货点及控制点的库所集合,其中每个元素用p
i
(i=0,1,...,3n)来表示,i=0表示车库,i=1,2,...,n表示取货点;i=n+1,n+2,...,2n表示送货点,i=2n+1,...,3n表示控制点;
[0016]b)在Petri网中使用变迁t
i,j
来表示车辆从位置p
i
行驶到p
j
,用t
j,i
来表示车辆从位置p
j
行驶到p
i
;其中i,j=0,1,...,2n且i≠j;
[0017]c)基于每个取货点或送货点只能被一辆车访问且只能访问一次的原因,用h={1,2,...,H}表示车辆移动的步数,且车辆每增加一步就意味着车辆访问一个点;
[0018]d)车辆每一步所在位置,使用Petri网的标识M来表示;使用步所在位置,使用Petri网的标识M来表示;使用表示车辆v在第h步时在各个点p
i
处的位置标记,即车辆v在第h步时所处的位置,其中v=1,2,...,V;h=1,2,...,H;i=0,1,...,3n;如果车辆v在第h步的位置是p
i
,那么,那么否则
[0019]e)在Petri网中,使用和和分别表示库所与变迁的前置关联矩阵和后置关联矩阵;如果库所p的输出弧指向变迁t时,Pre(p,t)=1,否则Pre(p,t)=0;如果变迁t的输出弧指向库所p时,Post(p,t)=1,否则Post(p,t)=0;为了保证同一个订单先取货后送货,在Petri网中,通过在一个订单的取货点和送货点之间添加控制点来实现,即控制点表示的控制库所:p
2n+1
,...,p
3n
;这些控制库所、取货点对应的库所、送货点对应的库所以及变迁之间的连接关系为:如果Post(p
i
,t)=1,那么Post(p
2n+i
,t)=1,如果Post(p
n+i
,t)=1,那么Pre(p
2n+i
,t)=1,其中:i=1,...,n;
[0020]f)在Petri网中使用c
i,j
这个载货向量表示车辆从p
i
到p
j
行驶时,p
j
处的需求量r
j
;其中,i,j=0,1,...,2n且i≠j;
[0021]g)在Petri网中采用列向量θ
v,h,i,j
=[θ
v,h,0,1
,θ
v,h,1,0
,...,θ
v,h,i,j
,...,θ
v,h,2n,2n
‑1]T
表示车辆v第h步的路径向量,其中:i,j=0,1,...,2n且i≠j;如果车辆v第h步是从位置p
i
到位置p
j
,那么θ
v,h,i,j
=1,否则θ
v,h,i,j
=0;
[0022]h)在Petri网中使用来表示车辆v在第h步的时刻,并且初始时刻
[0023]所述的步骤五的整数线性规划问题模型如下:
[0024]目标函数为:
[0025]约束条件为:
[0026]约束条件1:
[0027]约束条件2:
[0028]本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种取送货问题的车辆路径规划方法,其特征在于,包括以下步骤:步骤一、建立客户数据模型:根据待解决的带时间窗的取送货车辆路径问题,建立客户数据模型;步骤二、计算车库、取货点及送货点中两两之间的距离d
i,j
,i≠j,同时假设两两之间的行驶时间均是单位1;步骤三、建立带时间窗的取送货车辆路径问题的数学模型:根据实际的取送货订单需求,规划车库的车辆完成取送货任务,且客户订单的取货请求和送货请求都必须在一个时间窗内开始被服务;若车辆早于时间窗到达取货点或者送货点,则需要等到最早开始时间到临开始执行取送货任务;设计目标函数,目标函数是使车辆总的行驶距离最短;步骤四、基于客户数据模型,建立带时间窗的取送货车辆路径问题的Petri网模型;步骤五、基于步骤四的Petri网模型,将步骤三的数学模型转换为整数线性规划问题;步骤六、在MATLAB中调用步骤五整数线性规划问题的相关程序并进行求解和结果分析。2.根据权利要求1所述的方法,其特征在于,所述的步骤四带时间窗的取送货车辆路径问题的Petri网模型如下:a)车库i=0、取货点i
+
={1,...,n}、送货点i

={n+1,...,2n}及控制点i

={2n+1,...,3n}用集合P来表示,P={p0,p1,...,p
3n
}表示车库、取货点、送货点及控制点的库所集合,其中每个元素用p
i
(i=0,1,...,3n)来表示,i=0表示车库,i=1,2,...,n表示取货点;i=n+1,n+2,...,2n表示送货点,i=2n+1,...,3n表示控制点;b)在Petri网中使用变迁t
i,j
来表示车辆从位置p
i
行驶到p
j
,用t
j,i
来表示车辆从位置p
j
行驶到p
i
;其中i,j=0,1,...,2n且i≠j;c)基于每个取货点或送货点只能被一辆车访问且只能访问一次的原因,用h={1,2,...,H}表示车辆移动的步数,且车辆每增加一步就意味着车辆访问一个点;d)车辆每一步所在位置,使用Petri网的标识M来表示;使用d)车辆每一步所在位置,使用Petri网的标识M来表示;使用表示车辆v在第h步时在各个点p
i
处的位置标记,即车辆v在第h步时所处的位置,其中v=1,2,...,V;h=1,2,...,H;i=0,1,...,3n;如果车辆v在第h步的位置是pi,那么h步的位置是pi,那么否则e)在Petri网中,使用和和分别表示库所与变迁的前置关联矩阵和后置关联矩阵;如果库所p的输出弧指向变迁t时,Pre(p,t)=1,否则Pre(p,t)=0;如果变迁t的输出弧指向库所p时,Post(p,t)=1,否则Post(p,t)=0;为了保证同一个订单先取货后送货,在Petri网中,通过在一个订单的取货点和送货点之间添加控制点来实现,即控制点表示的控制库所:p
2n+1
,...,p
3n
;这些控制库所、取货点对应的库所、送货点对应的库所以及变迁之间的连接关系为:如果Post(p
i
,t)=1,那么Post(p
2n+i
,t)=1,如果Post(p
n+i
,t)=1,那么Pre(p
2n+i
,t)=1,其中:i=1,......

【专利技术属性】
技术研发人员:何舟张瑞杰马子玥古婵刘苗
申请(专利权)人:陕西科技大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1