1.一种基于Petri网和整数线性规划的车辆路径优化方法,其特征在于,包括以下步骤:步骤一、根据车辆路径问题的描述,建立其数学模型;
步骤二、基于步骤一的数学模型,建立车辆路径问题的Petri网模型;
步骤三、结合步骤二的Petri网模型,将步骤一的数学模型转换为整数线性规划问题;
步骤四、在MATLAB中导入步骤三内整数线性规划问题的程序,并输入客户点间的距离、货物需求量;
步骤五、利用YALMIP优化工具箱求解步骤四的整数线性规划问题,实验并进行结果分析。
2.根据权利要求1所述的一种基于Petri网和整数线性规划的车辆路径优化方法,其特征在于:所述的步骤二中建立的Petri网模型如下:a)P={p0,p1,...,pn},P表示客户点及配送中心点的库所集合,其中配送中心点用库所ρ0表示,客户点i用库所pi表示,i=1,...,n;
b)H表示车辆最多移动步数,车辆每访问一个点视为移动一步;
c)Mkh=[Mkh(p0),Mkh(p1),...,Mkh(pn)]表示Petri网的位置标识。如果车辆k在第h步的位置为点i(i=0,1,...,n),则Mkh(pi)=1,否则Mkh(pi)=0;
d)配送中心与任意客户i之间都有路径,分别用变迁t0i和变迁ti0表示车辆从配送中心点出发到客户点i,及车辆从客户点i出发到配送中心;
e)对于任意两个客户点i和j,i≠j,分别用变迁tji和变迁tij表示车辆从客户点j出发到客户点i,及车辆从客户点i出发到客户点j;
f) 表示库所与变迁的前置关联矩阵,若变迁t是库所p的输出变迁,即变迁t是从库所p发出的一条路线,则Pre(p,t)=1,否则Pre(p,t)=0;
g) 表示库所与变迁的后置关联矩阵,若变迁t是库所p的输入变迁,即变迁t指向的终点是库所p,则Post(p,t)=1,否则Post(p,t)=0;
h)νij表示Petri网的载货向量,车辆从点i到点j所增加的载货量,i,j=0,1,...,n,i≠j,即νij=qj;
i)Θkhij=[θkh01,θkh02,...,θkhij,...θkHnn-1],Θkhij表示Petri网的路径向量,若车辆k在第h步经i点出发访问j点,i≠j,则θkhij=1,否则θkhij=0。
3.根据权利要求2所述的一种基于Petri网和整数线性规划的车辆路径优化方法,其特征在于:所述的步骤三中建立的整数线性规划问题模型如下:目标函数为:minf=∑k∑hwi,jΘkhij约束条件为:
约束条件1:Mkh=Mkh-1+(Post-Pre)×Θkhij约束条件2:Mkh-1-Pre×Θkhij≥0约束条件3:∑kMk0(p0)=∑kMkH(p0)=K约束条件4:vij∑hΘkhij≤Q
约束条件5:∑k∑hMkh(pc)=1
约束条件6:k=1,2,…,K;h=1,2,…,H;i,j=0,1,…,n,i≠j;
c=1,…,n;
其中,变量定义如下:
k是供调用的车辆集合,k={1,2,3,...,K};
h是车辆运动的步数,H是车辆最多移动的步数,h={1,2,3,...,H};
i,j表示客户点或配送中心,i=j={0,1,...,n};
表示库所与变迁的前置关联矩阵,若变迁t是库所p的输出变迁,则Pre(p,t)=1,否则Pre(p,t)=0;
表示库所与变迁的后置关联矩阵,若变迁t是库所p的输入变迁,则Post(p,t)=1,否则Post(p,t)=0;
Θkhij=[θkh01,θkh02,...,θkhij,...,θkHnn-1]表示Petri网的路径向量;若车辆k在第h步经i点出发访问j点(i≠j),则θkhij=1,否则θkhij=0;
Mkh=[Mkh(p0),Mkh(p1),...,Mkh(pn)]表示Petri网的位置标识;如果车辆k在第h步的位置为点i(i=0,1,...,n),则Mkh(pi)=1,否则Mkh(pi)=0;
vij表示Petri网的载货向量,车辆从点i到点j所增加的载货量,i,j=0,1,...,n,i≠j,即νij=qj。