利索能及
我要发布
收藏
专利号: 202211693379X
申请人: 浙江工业大学
专利类型:发明专利
专利状态:已下证
更新日期:2026-08-06
缴费截止日期: 暂无
联系人

摘要:

权利要求书:

1.一种用于成品油二次物流配送车辆调度优化的求解算法,其特征在于包括如下步骤:

1)输入成品油二次物流配送问题的基本物流计划和物流数据;

2)针对成品油二次物流配送的问题特征和求解目标,构建目标函数和相应数学模型;

3)基于构造式启发式算法对成品油二次配送问题进行求解,从而获得初始可行解;

4)基于禁忌搜索算法对构造式算法求得的初始可行解进行迭代优化,保存输出历史最优解;

5)基于算法获得的历史最优解,将其导出为最优车辆调度方案;

步骤2)的目标函数的构建过程如下:将成品油二次配送问题的目标函数设置为一个综合目标函数,综合目标函数主要由车辆配送成本和订单损失成本两部分组成,车辆配送成本分为车辆固定配送成本和车辆可变运输成本,订单损失成本分为订单未配送部分损失成本和未配送订单损失成本,车辆固定使用成本的表达式如式(1)所示

c1:车辆固定使用费用,单位为:元/辆;k:配送车辆编号,k∈K;ukr:uk1为车辆k在第一次行程的配送情况,如果车辆k在行程r进行了配送,则ukr=1,否则ukr=0;

车辆可变运输成本的表达式如式(2)所示

c2:车辆单位配送费用,单位为:元/公里;i,j:节点编号,i,j∈N;r:车辆行程编号,r∈Rk;dij:节点i到节点j之间的路线距离,单位为:千米;xijkr:如果车辆k经过从站点i到站点j的路线i,j,则xijkr=1,否则xijkr=0;

订单未配送部分损失成本的表达式如式(3)所示

c3:订单未配送部分的单位损失费用,单位为:元/千升;p:订单编号,p∈Pi;m:车舱编号,m∈Mk;yikpmr:如果站点i的订单p装载到车辆k的车舱m中,并在行程r进行配送,则yikpmr=

1,否则yikpmr=0;qip:站点i的订单p的需求量,单位为:千升;Qkm:车辆k的车舱m的容量,单位为:千升;

未配送订单损失成本的表达式如式(4)所示

c4:未配送订单的单位损失费用,单位为:元/千升;

综合目标函数表达式如式(5)所示:

步骤2)基于成品油二次配送问题本质上是一个车辆路径问题,但由于油品配送情景的特殊性和复杂性,需要对模型进行约束,从而进行数学建模,对于配送车辆,其每次行程开始都是从油库出发,完成油品订单的配送后又返回油库,从而准备下一趟行程的配送,并且配送车辆只有完成了上一行程的配送任务后,才能进行下一行程的配送,为了避免车辆路径方案中产生子回路,采取了MTZ约束来消除子回路,得到如式(6)‑式(10)所示的约束公式(6)表示任意车辆的任意行程开始都从油库出发;

公式(7)表示任意车辆的任意行程结束都返回油库;

公式(8)表示对于任意车辆,只有前一行程完成后,后一行程才能开始;

公式(9)表示流入流出平衡约束;

公式(10)表示MTZ消除子回路约束,n表示节点的数量;zikr:表示车辆k在行程r中访问站点i的顺序;

针对成品油二次配送问题中,每个油品订单最多只能装载到一个车舱上,每个车舱也最多只能装载一个订单,订单在车舱上的装载可行性与车舱上实际装载的订单容量相关,实际装载量与车舱容量的比值需要不低于车舱的最低配载率,实际装载量与订单容量的比值需要不低于订单的最低配送率,定义如式(11)‑式(14)的约束,公式(11)表示对于任意车辆任意行程中的任意车舱,其最多只能装载一个订单;

公式(12)表示对于任意站点的任意订单,其最多只能装载到一个车舱;

公式(13)表示订单如果装载到车舱上,车舱的配载率不能低于最低配载率α;

公式(14)表示允许订单部分不被配送,但订单的实际配送率不能低于最低配送率β;

对于任意配送车辆,其总配送时间不能超过最大工作时间,车辆在某一行程的配送时间主要由三个部分组成:油品订单的装载时间,油品订单的卸载时间以及车辆运输时间,车辆的总配送时间为所有行程配送时间之和,定义如式(15)的约束,公式(15)表示车辆配送总时间不能超过最大工作时间;s1:油品装载速率,单位为:千升/分钟;

s2:油品卸载速率,单位为:千升/分钟;λ:车辆最大工作时间,单位为:小时;v:车辆行驶速度,单位为:千米/小时;

公式(16)‑公式(19)为变量的定义, 是实数集 的一维形式。

2.如权利要求1所述的求解算法,其特征在于对于任意加油站i的任意订单p,其配送紧急度Oip的计算公式如下:其中,通过统计所有满足订单装载需求的车舱的可配送次数,即获得了对订单可用配送资源的评价,若配送资源越少,则说明该订单的配送紧急度越高,从而考虑将车舱优先分配给该订单;

对于任意加油站i的配送优先度Ji的计算公式如下:

其中,d0i表示加油站i到油库的路线距离;配送优先度的评价主要考虑了两个方面:站点到油库的距离以及该站点所属订单的配送紧急度,对于一个可行的订单装载方案L,其配送效益的计算公式如下:f(L)=w4C(L)+w5U(L)            (22)其中,f(L)表示装载方案的配送效益,C(L)表示该装载方案的配送成本,U(L)则表示该装载方案中总体订单配送紧急度,w1,w2,w3,w4,w5:控制参数;

步骤3)的具体操作方式包括如下步骤:

步骤1:初始化待配送站点集合N′,可配送车辆集合K,车辆配送方案集合S;

步骤2:如果当前配送站点集合N′不为空,转到步骤3;否则,转到步骤13;

步骤3:基于公式(20)更新所有订单的配送紧急度,再基于公式(21)计算所有待配送站点的配送优先度,从中选择配送优先度最高的站点作为种子站点i,生成初始站点组合{i};

步骤4:对于初始站点组合,从可配送车辆集合K中依次选择车辆,如果车辆存在可行的订单装载方案L,则将该方案添加到装载方案集合D中;

步骤5:设置最佳装载方案Lbest为空,设置最佳配送效益fbest为0;

步骤6:如果当前装载方案集合D为空,则转到步骤10;否则,转到步骤7;

步骤7:从装载方案集合D中依次选择装载方案进行移除,如果选择的装载方案中存在车舱没有被分配装载订单,则转到步骤8;否则,转到步骤9;

步骤8:对于选择的装载方案L,根据其装载的订单信息,获得当前车辆所访问的站点组合,基于最近邻插入算法选择最佳的站点插入,针对插入后的站点组合,判断是否存在可行的插入装载方案L′,如果存在,将新装载方案L′添加到集合D中,并转到步骤7;否则,转到步骤9;

步骤9:对于选择的装载方案L,基于公式(22),计算装载方案的配送效益,如果f(L)>fbest,则更新Lbest=L,fbest=f(L),转到步骤5;

步骤10:如果Lbest为空,说明对于种子站点i不存在可行的配送方案,转到步骤11,否则,转到步骤12;

步骤11:从待配送站点集合N′中移除种子站点i,转到步骤2;

步骤12:根据最佳装载方案Lbest,求解其对应的最佳配送路线方案,将装载方案和路线方案保存到车辆配送方案集合S中,并更新待配送站点集合N′以及可配送车辆集合K;转到步骤2;

步骤13:算法终止,输出最终的车辆配送方案集合S。

3.如权利要求2所述的求解算法,其特征在于步骤4)的禁忌搜索算法的主要步骤如下所示:步骤1:算法初始化,设置参数,包括禁忌表长度、候选集合长度、最大迭代步数;

步骤2:基于构造式启发式生成初始可行解,作为迭代搜素的起点;

步骤3:分别应用集中性策略和多样化策略,生成候选解集合;

步骤4:根据评价函数,判断当前候选解集是否存在满足藐视准则的解,如果存在,则选择该解作为下次迭代的初始解;否则,从候选解集中选择未被禁忌的当前局部最优解作为下次迭代的初始解;

步骤5:更新禁忌表;

步骤6:判断算法是否满足终止条件,若满足,则输出迭代中出现的最优解,终止算法;

如果不满足,则将当前选择的解作为下次迭代的起点,转到步骤3。