[发明专利]一种基于Petri网理论的带时间窗的车辆路径优化方法有效
申请号: | 202010230036.4 | 申请日: | 2020-03-27 |
公开(公告)号: | CN111445186B | 公开(公告)日: | 2021-08-24 |
发明(设计)人: | 何舟;张瑞杰;施威杰;古婵;刘苗 | 申请(专利权)人: | 陕西科技大学 |
主分类号: | G06Q10/08 | 分类号: | G06Q10/08;G06Q10/06 |
代理公司: | 西安智大知识产权代理事务所 61215 | 代理人: | 贺建斌 |
地址: | 710021 陕西省*** | 国省代码: | 陕西;61 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 petri 理论 时间 车辆 路径 优化 方法 | ||
1.一种基于Petri网理论的带时间窗的车辆路径优化方法,其特征在于,包括以下步骤:
步骤一、建立客户数据模型:根据待解决的带时间窗车辆路径问题,建立客户数据模型;
步骤二、计算配送中心和客户点中两两之间的距离di,j,i≠j,同时假设两两之间的运输时间均是单位1;
步骤三、建立带时间窗的车辆路径问题的数学模型:根据车辆的配送需求,车辆配送问题属于带有硬时间窗约束的车辆路径问题,配送中心出发的车辆必须按照目的地的时间窗要求到达目的地,不能早于最早的时间要求,同时不能晚于最晚的时间要求;设计目标函数,目标函数是使车辆总的配送距离最短;
步骤四、基于客户数据模型,建立带时间窗车辆路径问题的Petri网模型;
步骤五、基于步骤四的Petri网模型,将步骤三的数学模型转换为整数线性规划问题;
步骤六、在MATLAB中调用步骤五整数线性规划问题的相关程序;
步骤七、利用YALMIP优化工具箱求解步骤六的程序内容并进行结果分析;
所述的步骤四带时间窗车辆路径问题的Petri网模型如下:
a)配送中心及客户点i=1,2,…,n用集合P来表示,P={p1,p2,...,pn}表示配送中心及客户点的库所集合,其中每个元素用pi来表示,i=1表示配送中心,i=2,3,...,n表示客户点;
b)在配送中心和所有客户点中,两两之间都可能存在运输路径,因此在Petri网中使用变迁ti,j来表示车辆从位置pi运输到Pj,用tj,i来表示车辆从位置pj运输到pi;
c)基于每个客户点只能被一辆车访问且只能访问一次的原因,用k={1,2,...,K}表示车辆移动的步数,且车辆每增加一步就意味着车辆访问一个点;
d)为了明确车辆每一步的运输状态,即知道车辆每一步所在位置,使用Petri网的标识M来表示;使用Mc,k=[Mc,k(p1),Mc,k(p2),...,Mc,k(pn)]T表示车辆c在第k步时在各个点pi处的位置标记,即车辆c在第k步时所处的位置,其中c=1,2,...,C;k=1,2,...,K;i=1,2,...,n;如果车辆c在第k步的位置是pi,那么Mc,k(pi)=1,否则Mc,k(pi)=0;
e)在Petri网中,使用和分别表示库所与变迁的前置关联矩阵和后置关联矩阵;如果库所p的输出弧指向变迁t时,Pre(p,t)=1,否则Pre(p,t)=0;如果变迁t的输出弧指向库所p时,Post(p,t)=1,否则Post(p,t)=0;
f)在Petri网中使用vi,j这个载货向量表示车辆从pi到Pj运输时,Pj处的需求量rj;
g)为了表示车辆c第k步的运输路径,在Petri网中采用列向量θc,k,i,j=[θc,k,0,1,θc,k,0,2,...,θc,k,i,j,...,θc,k,n,n-1]T表示车辆c第k步的路径向量,其中:i,j=1,2,...,n且i≠j;如果车辆c第k步是从位置pi到位置Pj,那么θc,k,i,j=1,否则θc,k,i,j=0;
h)为了满足每个位置pi处的时间窗约束,在Petri网中使用τc,k来表示车辆c在第k步的时刻,并且初始时刻τc,0=0;
所述的步骤五的整数线性规划问题模型如下:
目标函数为:
约束条件为:
约束条件1:Mc,k=Mc,k-1+(Post-Pre)×θc,k,i,j
约束条件2:Mc,k-1-Pre×θc,k,i,j≥0
约束条件3:1T×θc,k,i,j≤1
约束条件4:
约束条件5:
约束条件6:
约束条件7:ei-τc,k≤[1-Mc,k(pi)]×H,i=2,3,…,n,k=1,2,...,K-1,c=1,2,...,C
约束条件8:τc,k-li≤[1-Mc,k(pi)]×H,i=2,3,...,n,k=1,2,...,K-1,c=1,2,...,C
约束条件9:e1-τc,K≤[1-Mc,K(p1)]×H,c=1,2,...,C
约束条件10:τc,K-l1≤[1-Mc,K(p1)]×H,c=1,2,...,C
约束条件11:τc,k=τc,k-1+1T×θc,k,i,j+Dc,k-1
约束条件12:τc,0=0,c=1,2,...,C
约束条件13:i,j=1,2,...,n且i≠j,k=1,2,...,K,c=1,2,...,C
其中,H是一个足够大的数;其它变量定义如下:
c是可供调用的车辆的集合,c={1,2,...,C};
k是车辆的移动步数,K是车辆最多移动的步数,k={1,2,...,K};
i,j表示客户点或配送中心,i,j={1,2,...,n};
表示库所和变迁的前置关联矩阵,如果库所p的输出弧指向变迁t时,Pre(p,t)=1,否则Pre(p,t)=0;
表示库所与变迁的后置关联矩阵,如果变迁t的输出弧指向库所p时,Post(p,t)=1,否则Post(p,t)=0;
θc,k,i,j=[θc,k,0,1,θc,k,0,2,...,θc,k,i,j,...,θc,k,n,n-1]T表示Petri网的路径向量;如果车辆c在第k步经点i出发去访问j点,则θc,k,i,j=1,否则θc,k,i,j=0;
Mc,k=[Mc,k(p1),Mc,k(p2),...,Mc,k(pn)]T是Petri网的位置标识,如果车辆c在第k步的位置是pi,那么Mc,k(pi)=1,否则Mc,k(pi)=0;
di,j表示点i和点j之间的欧几里得距离;
R是每辆车的最大载货量;
vi,j表示Petri网的载货向量,如果车辆从点i到点j,那么vi,j=rj;
ei和li分别表示每个客户点或配送中心i处的最早服务时间和最晚服务时间;
Dc,k表示车辆c第k步的服务时间;
τc,k表示车辆c第k步所处的时刻。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于陕西科技大学,未经陕西科技大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010230036.4/1.html,转载请声明来源钻瓜专利网。
- 同类专利
- 专利分类
G06Q 专门适用于行政、商业、金融、管理、监督或预测目的的数据处理系统或方法;其他类目不包含的专门适用于行政、商业、金融、管理、监督或预测目的的处理系统或方法
G06Q10-00 行政;管理
G06Q10-02 .预定,例如用于门票、服务或事件的
G06Q10-04 .预测或优化,例如线性规划、“旅行商问题”或“下料问题”
G06Q10-06 .资源、工作流、人员或项目管理,例如组织、规划、调度或分配时间、人员或机器资源;企业规划;组织模型
G06Q10-08 .物流,例如仓储、装货、配送或运输;存货或库存管理,例如订货、采购或平衡订单
G06Q10-10 .办公自动化,例如电子邮件或群件的计算机辅助管理