MATLAB粒子群算法求解带充电站(桩)的电动车辆路径规划EVRP问题代码实例

MATLAB粒子群算法求解带充电站(桩)的电动车辆路径规划EVRP问题代码实例

问题实例描述:
现有一个配送中心需要向20个客户点进行送货。每个客户点有不同货物需求量和卸货服务时间。配送中心和客户点的位置和相关信息如下表所示(0表示配送中心,1~20表示客户点):

表1 配送中心和客户点的位置和相关服务信息
编号 x坐标 y坐标 所需货物量(kg) 服务时间(分钟)
0 50 50 nan nan
1 17 48 36 20
2 80 40 39 20
3 45 68 37 20
4 43 40 94 20
5 71 58 74 20
6 79 30 41 20
7 50 16 60 20
8 37 87 71 20
9 51 71 55 20
10 23 85 76 20
11 74 24 92 20
12 83 64 70 20
13 59 51 49 20
14 82 55 26 20
15 64 48 39 20
16 71 63 31 20
17 75 45 81 20
18 15 50 95 20
19 21 25 53 20
20 36 40 69 20

现有6个充电站,位置如下表所示:
表2 充电站位置信息:
编号 x y
1 73 33
2 40 80
3 20 35
4 69 63
5 67 13
6 26 54

配送中心配备有一定数量的配送电动车用于配送服务,每辆电动车的启动费用为100元,每辆电动车的单位行驶成本为0.5元/km,每辆电动车的最大荷载量为1500 kg,车辆载重不得超过其最大荷载量。当电动车电量不足到达下一个目的地时需要及时到最近的充电站进行充电,每次充电需耗时20分钟,并支付充电费用20元。配送总成本为车辆启动费、行驶成本费和充电成本费之和。请选择合理的车辆数以及车辆的配送和充电路径,使得在满足约束条件的情况下,所花费的总成本最少。

E-ⅤRP数学模型:
E-ⅤRP可以描述为:对于配送网络中给定的配送中心、客户点、充电站和一个电动车队,在规定的最大配送服务时间内,为每一辆电动车规划服务客户节点的行驶路径,达到最小化总配送成本的目标。因受电池容量限制,配送过程中,若电动车的剩余电量不足以支撑其前往下一配送节点时,必须先前往充电站进行充电。同时需满足以下条件用于配送的电动车数量不多于配送中心现有的总车辆数;电动车载重量不超出额定载重等条件,选择合理的目标函数,如最小化配送总成本、最短行驶距离、最少配送时间等构建电动车路径规划模型。
本节主要介绍一般的EVRP模型,即假设能量消耗是均匀的,其电量消耗是行驶距离的线性函数,能量消耗系数为常数。充电时间固定20分钟,充电后电池电量水平达到额定容量。电动车行驶过程中保持匀速。
(1)电动车配送路径规划模型(E-CⅤRP)的载重约束该模型只考虑一个配送中心,客户点有访问次数的限制,配送车辆为同一类型,目标函数为最小化总配送成本(包括车辆启动成本、行驶成本和充电成本)相关符号及定义:
I:客户点集合;
F:充电站集合;
F’:为充电站集合F与其虚拟节点的集合,即允许多次访问充电站;
O:配送中心;
N:客户点、充电站及配送中心的集合;
K:电动车k的集合
若电动车k从节点行驶至点j则为1,否则为0
tijk:电动车k从客户节点i行驶至节点j所需时间;
taik:电动车k到达节点i的时刻;
tlik:电动车k离开节点i的时刻;
sik:电动车k在节点i的服务时间,特别地,当节点i为充电站时,服务时间是2小时;
twik:电动车在节点i的等待时间;
[ei,li]:客户节点i的服务时间窗;
dij:节点i与节点j之间的距离;
v:电动车的平均行驶速度;
W: 电动车的额定载重量;
Uik:电动车k到达节点i时的负载重量(卸货前);
Wi:客户点i需求货物数量;
mw:单位货物质量;
mc:电动车的空车质量;
c1:单位启动成本,元/辆;
c2:单位行驶成本,元/km;
c3:单次充电成本,元/次;
Tmax:整个配送服务允许的最长时间。

数学模型表示如下:

在这里插入图片描述

公式(2-1)以最小化总配送成本作为目标函数,公式(2-2)表示每个客户点必须1次;公式(2-3)确保每个节点的流守恒;公式(2-4)表示配送车辆的载重量不超过其额定值;公式(2-5)表示电动车k在节点j的载重量等于在节点i的载重量减去节点i的需求货物重量;公式(2-6)至(2-9)确保时间的可行性,公式(2-10)至(2-11)为配送时间窗约束。

(2)电动车配送路径规划模型(EVRP)的电量约束
电动车k到达客户点i和离开客户点i时的电量相等,即服务过程中不消耗电量,表达如下
在这里插入图片描述

电动车k从前一个节点i离开前往下一个节点j时,到达下一节点j时的电量等于离开前一个节点i时的电量减去行驶途中所消耗的电量。
在这里插入图片描述

配送过程中,电动车从任意一个节点i离开时,其剩余电量需大于回到配送中心O或前往充电站f所需电量。
在这里插入图片描述
其中,Pik1表示电动车k到达点i时的剩余电量;
Pik2表示电动车k离开点i时的剩余电量;
Q为电池额定容量;
b0表示能量消耗系数,为常数。

2 求解模型的粒子群算法设计
粒子群算法简介
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述在这里插入图片描述

在这里插入图片描述
已知信息:配送中心、6个充电站和20个客户点的坐标位置图

如何确定合理的车辆数以及车辆的配送和充电路径,使得车辆启动费、行驶成本费和充电成本费之和最小呢?当然是通过算法优化求解啦!

先看下求解结果!
运行结果:
在这里插入图片描述
在这里插入图片描述

最终方案为:启动车辆为:4
充电次数分别为 1 1 1 1
总充电次数为:4
配送线路服务客户最大数量为:6
行驶总里程为:405.13
最长运行时间为:4.66
车辆启动成本为:400.00
车辆行驶成本为:202.57
车辆充电成本为:80.00
总成本为:682.57

  • 2
    点赞
  • 39
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值