基于变邻域搜索算法的油品二次物流配送优化方法及系统与流程

文档序号:27833722发布日期:2021-12-07 22:58阅读:204来源:国知局
基于变邻域搜索算法的油品二次物流配送优化方法及系统与流程

1.本发明属于成品油配送技术领域,具体涉及基于变邻域搜索算法的油品二次物流配送优化方法及系统。


背景技术:

2.成品油二次物流配送是一个综合性与复杂性比较强的过程,受到多方面条件的束缚与外界因素的影响。通常具有运输任务多、单车配送数量少、运输设备少、配送频次高、配送计划变化快、运输要求严格、运输成本高等特点。如何在当前资源条件下提升企业的二次物流调度能力、提高效率、降低成本、增加利润,是企业急需解决的问题。
3.成品油配送相关研究主要集中在多舱配送、多行程配送和需求可拆分配送等几个方面。在成品油多舱配送研究方面,cornillier等考虑带时间窗的多油库补货问题,设计了启发式算法进行求解。alinaghian等设计了大规模邻域搜索和变邻域搜索混合算法求解多油库多车舱成品油配送问题。以上研究均未考虑客户需求可拆分的情况。在多行程成品油配送研究方面,cornillier等研究了在单一油库和多油库情况下的加油站补货问题,未考虑订单的补货时间窗。王旭坪等考虑了订单的补货时间窗,采用先行程后分组的策略求解该问题,但并未考虑配送车运输时间窗。在需求可拆分的成品油配送研究方面,张源凯等提出了基于c

w节约算法的“需求拆分

合并装载”策略。wang等设计了自适应大规模邻域搜索算法求解该问题。上述研究均未综合考虑运输时间窗和订单交货期约束,无法很好地满足客户需求。
4.例如公开号为cn111768084a的中国专利,其公开了成品油二次配送调度优化方法、装置、设备和存储介质,该方法应用遗传算法寻找油罐车尽量满载且行车路线最短的派车组合,但是其仍然未考虑运输时间窗和订单交货期约束。


技术实现要素:

5.针对现有技术中存在的上述问题,本发明提出基于变邻域搜索算法的油品二次物流配送优化方法及系统,最优配送方案求解时考虑了运输时间窗约束以及油品订单交货期约束,提高了二次物流效率、利润,提升了企业的二次物流调度能力。
6.本发明采用以下技术方案:
7.基于变邻域搜索算法的油品二次物流配送优化方法,包括步骤:
8.s1、获取距离信息、时间信息,距离信息包括油库、各供能站之间的距离,时间信息包括配送车在油库、各供能站之间运输所需的行驶时间;
9.s2、获取油库信息、供能站信息,油库信息包括油库配备的配送车数量、单位距离运输成本以及各配送车车舱容量大小、运输时间窗,供能站信息包括各供能站的单位时间惩罚成本、油品单位收益、各油品订单需求量、各油品订单交货期;
10.s3、建立考虑运输时间窗约束以及油品订单交货期约束的最大化配送收益模型;
11.s4、根据获取的距离信息、时间信息、油库信息、供能站信息,并基于变邻域搜索算
法,对最大化配送收益模型进行求解,以得到最优配送方案。
12.作为优选方案,每个车舱只装载一个供能站的一种油品,供能站的每种油品订单需求量由一个车舱一次性满足。
13.作为优选方案,单个配送车的配送路线上,任意供能站只被访问一次。
14.作为优选方案,步骤s3中,最大化配送收益模型为:
[0015][0016]
s.t.
[0017][0018][0019][0020]
其中,式(3)中第一项为订单配送总收益、第二项为总运输成本、第三项为总断供惩罚成本,式(8)表示配送车车舱容量约束,式(16)表示配送车从油库开始装油时刻与配送车运输时间窗之间的关系,式(17)表示配送车返回油库时刻与配送车运输时间窗之间的关系,s.t.表示约束条件;
[0021]
其中,i,j表示供能站和油库编号,i,j∈n,n表示供能站和油库集合,n=n
c
∪{0},n
c
={1,2,...,n}表示供能站编号集合,n表示供能站总数,0表示油库编号;k表示油品种类集合,k={1,2,...,b},b表示油品种类总数,k表示油品种类编号,k∈k;r
i
表示供能站i的油品单位收益;q
ik
表示供能站i的油品k的需求量;d
ij
表示节点i到节点j的距离;μ
ik
表示供能站i的油品k是否被配送,配送取值为1,否则取值为0;m表示配送车编号,m∈m,m表示配送车集合,m={1,2,...,a},其中a表示配送车总数;l表示配送车行程序号,l∈l
m
,l
m
表示配送车m的可能行程集合,l
m
={1,2,...,p
m
},p
m
表示配送车m的最大行程数;c表示配送车单位距离运输成本;β
i
表示供能站i的单位时间惩罚成本;ν
ik
表示配送车晚于订单交货期s
ik
到达供能站i导致油品k的断供时间,s
ik
表示供能站i的油品k的交货期;为决策变量:
[0022][0023]
v
mh
表示配送车m的第h个车舱的容量大小,h表示车舱编号,h∈h
m
,h
m
表示配送车m的舱位集合,h
m
={1,2,...,g
m
},g
m
表示配送车m的舱位数,为决策变量:
[0024][0025]
m
s
表示配送车m的可用起始时刻,表示车辆m的第l次行程开始从油库装油的时刻,表示一个极大的正数,w
ml
为决策变量:
[0026][0027]
表示配送车m的第l次行程运输完成后回到油库的时刻,m
e
表示配送车m的可用截止时刻。
[0028]
作为优选方案,μ
ik
的计算方式如下:
[0029][0030]
作为优选方案,断供时间ν
ik
的计算方式如下:
[0031][0032]
其中,γ
mlik
表示配送车m的第l次行程到达供能站i服务油品k的时刻,dt表示配送周期截止时刻。
[0033]
作为优选方案,步骤s4中具体包括:
[0034]
s4.1、以订单的单位时间收益最大为插入准则,利用前向插入启发式算法构造初始解;
[0035]
s4.2、通过邻域扰动,将部分订单从当前解移入订单池;
[0036]
s4.3、以订单的单位时间收益最大为插入准则,在订单池中选取部分订单重新插入到当前解中,以生成局部最优解;
[0037]
s4.4、通过调整局部最优解的访问次序,对局部最优解进行优化,以获取配送解;
[0038]
s4.5、对步骤s4.2

s4.4进行迭代,将迭代过程中更优的配送解作为历史最优解,且当历史最优解连续不更新预设迭代次数时,将历史最优解输出,以得到最优配送方案。
[0039]
作为优选方案,步骤s4.2中具体为:
[0040]
使用交货期移除算子进行邻域扰动,以将部分油品订单交货期与配送车到站时刻不符的订单从当前解移入订单池。
[0041]
作为优选方案,所述订单的单位时间收益定义为:订单配送收益与完成该订单配送时间的比值。
[0042]
相应地,还提供了基于变邻域搜索算法的油品二次物流配送优化系统,包括分别与求解模块联接的距离信息获取模块、时间信息获取模块、油库信息获取模块、供能站信息获取模块、模型建立模块;
[0043]
距离信息获取模块,用于获取距离信息,距离信息包括油库、各供能站之间的距离;
[0044]
时间信息获取模块,用于获取时间信息,时间信息包括配送车在油库、各供能站之间运输所需的行驶时间;
[0045]
油库信息获取模块,用于获取油库信息,油库信息包括油库配备的配送车数量、单位距离运输成本以及各配送车车舱容量大小、运输时间窗;
[0046]
供能站信息获取模块,用于获取供能站信息,供能站信息包括各供能站的单位时
间惩罚成本、油品单位收益、各油品订单需求量、各油品订单交货期;
[0047]
模型建立模块,用于建立考虑运输时间窗约束以及油品订单交货期约束的最大化配送收益模型;
[0048]
求解模块,用于根据获取的距离信息、时间信息、油库信息、供能站信息,并基于变邻域搜索算法,对最大化配送收益模型进行求解,以得到最优配送方案。
[0049]
本发明的有益效果是:
[0050]
(1)、在对最大化配送收益模型进行求解时,考虑了配送车运输时间窗约束以及油品订单交货期约束,使最终获取的配送方案更为合理,提高了二次物流效率、利润,提升了企业的二次物流调度能力。
[0051]
(2)、在对最大化配送收益模型进行求解时,还考虑了不同供能站的单位时间惩罚成本,即考虑了每个供能站对于油品断供时,造成的损失不同,使最终获取的配送方案更为合理,提高了二次物流效率、利润,提升了企业的二次物流调度能力。
[0052]
(3)、采用先移除后插入操作重新构建车舱和订单间的匹配关系,有效避免非可行解的产生。
[0053]
(4)、使用交货期移除算子进行邻域扰动,交货期移除算子通过调整配送车到站时刻与订单交货期之间的差距来减少断供惩罚成本,能有效减少配送车迟到导致油品断供的情况,提高配送及时性,能够有效避免出现油站缺货这种重大事故以及有效的降低企业物流成本,从而在本质上提高石油企业的核心竞争力。
附图说明
[0054]
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0055]
图1是本发明所述基于变邻域搜索算法的油品二次物流配送优化方法的流程图;
[0056]
图2是邻域扰动和局部优化过程的示意图;
[0057]
图3是算例s23

o69

v6

c3

16000在三种算法中的搜索过程图;
[0058]
图4是算例s50

o150

v14

c3

16000在三种算法中的搜索过程图;
[0059]
图5是三种算法所得解的断供惩罚成本折线图;
[0060]
图6是本发明所述基于变邻域搜索算法的油品二次物流配送优化系统的结构示意图。
具体实施方式
[0061]
以下通过特定的具体实施例说明本发明的实施方式,本领域技术人员可由本说明书所揭露的内容轻易地了解本发明的其他优点与功效。本发明还可以通过另外不同的具体实施方式加以实施或应用,本说明书中的各项细节也可以基于不同观点与应用,在没有背离本发明的精神下进行各种修饰或改变。需说明的是,在不冲突的情况下,以下实施例及实施例中的特征可以相互组合。
[0062]
实施例一:
[0063]
参照图1,本实施例提供了基于变邻域搜索算法的油品二次物流配送优化方法,
[0064]
s1、获取距离信息、时间信息,距离信息包括油库、各供能站之间的距离,时间信息包括配送车在油库、各供能站之间运输所需的行驶时间;
[0065]
s2、获取油库信息、供能站信息,油库信息包括油库配备的配送车数量、单位距离运输成本以及各配送车车舱容量大小、运输时间窗,供能站信息包括各供能站的单位时间惩罚成本、油品单位收益、各油品订单需求量、各油品订单交货期;
[0066]
s3、建立考虑运输时间窗约束以及油品订单交货期约束的最大化配送收益模型;
[0067]
s4、根据获取的距离信息、时间信息、油库信息、供能站信息,并基于变邻域搜索算法,对最大化配送收益模型进行求解,以得到最优配送方案。
[0068]
即,在对最大化配送收益模型进行求解时,考虑了配送车运输时间窗约束以及油品订单交货期约束,在实际油品运输中,油站配备的各配送车具有不同的运输时间窗,供油站对于各油品订单的交货期也不相同,因此本实施例在进行最优配送方案求解时考虑了这两点因素。进一步还考虑了不同供能站的单位时间惩罚成本,即考虑了每个供能站对于油品断供时,造成的损失不同。从而使最终获取的配送方案更为合理,提高了二次物流效率、利润,提升了企业的二次物流调度能力。
[0069]
以下针对1个油库和3个供能站的配送网络进行举例说明:
[0070]
其中,油库中配备的配送车相关信息如下表1所示:
[0071][0072]
表1配送车相关信息表
[0073]
供能站相关信息如下表2所示:
[0074][0075]
表2供能站相关信息表
[0076]
步骤s3中建立的考虑运输时间窗约束以及油品订单交货期约束的最大化配送收
益模型表示为:
[0077][0078]
式(3)中,第一项为订单配送总收益、第二项为总运输成本、第三项为总断供惩罚成本。
[0079]
其约束条件如下:
[0080]
s.t.
[0081][0082][0083][0084][0085][0086][0087][0088][0089][0090][0091][0092][0093][0094][0095][0096][0097][0098]
参数含义如下表3所示:
[0099][0100][0101]
表3参数含义表还定义以下决策变量:
[0102][0103][0104][0105]
γ
mlik
:配送车m的第l次行程到达供能站i服务油品k的时刻
[0106]
:配送车m的第l次行程开始从油库装油的时刻
[0107]
:配送车m的第l次行程运输完成后回到油库的时刻
[0108]
变量μ
ik
表示供能站i的油品k是否被配送,配送取值为1,否则取值为0。μ
ik
的计算方式如下:
[0109][0110]
变量ν
ik
表示配送车晚于订单交货期s
ik
到达供能站i导致油品k的断供时间。表示断供惩罚成本,用来衡量配送及时性,越小,配送及时性越高。
[0111][0112]
式表示不同情况下断供时间ν
ik
的计算方式:对于任意供能站i的油品k,若该订单被分配但送达时刻晚于交货期,则断供时间=送达时刻

交货期;若该订单被分配且送达时刻早于交货期,则断供时间为0;若该订单未被分配,则断供时间=配送周期截止时刻

交货期。
[0113]
式表示当配送车m的行程l创建后,所有配送车m均从油库出发,完成任务后返回油库,且行程l中必须存在一个首先被服务的客户和一个最后被服务的客户。式表示配送车在当前站点完成配送任务后必须离开到下一个站点或者返回油库。式表示在一条配送路径中,任意站点最多只能被访问一次。式表示对任一配送车而言,只有当前一行程存在时才能创建后一行程。式(8)表示配送车车舱容量约束。式表示每辆配送车的每个车舱最多只能装载一个供能站的一种成品油。式表示每个供能站的每个订单最多只能由一辆配送车的一个车舱一次性满足。式表示子回路消除约束。式表示同一配送车相邻两次从油库出发的时间关系。式表示任一访问站点的到达时刻与配送车从油库开始装油时刻之间的关系。式表示任一访问站点的到达时刻与配送车最终返回油库时刻之间的关系。式表示配送车同一行程到达相继两个供能站之间的关系。式和表示配送车从油库开始装油时刻和返回油库时刻与配送车运输时间窗之间的关系。式~表示决策变量约束。
[0114]
以上,是对步骤s3中建立的考虑运输时间窗约束以及油品订单交货期约束的最大化配送收益模型的解释说明,以下对步骤s4中所述基于变邻域搜索算法,对最大化配送收
益模型进行求解的过程进行具体说明:
[0115]
在配送车运输时间窗约束下,利用传统的邻域动作(如交换、易位等)进行求解容易产生非可行解,而先移除后插入操作通过重新构建车舱和订单间的匹配关系能有效避免非可行解的产生,因此,针对迭代过程中每一步产生的解,采用先移除后插入操作进行邻域搜索。在初始解构造阶段和解的局部优化阶段,均以订单的单位时间收益最大为插入准则。订单的单位时间收益可定义为:订单的配送收益与完成该订单的配送时间的比值,它是反应配送绩效的一个性能指标。订单的配送收益为:
[0116]
pf
ik
=r
i
q
ik
d
0i

b
i
n
ik

d
(i

1)i
c
ꢀꢀꢀ
(21)
[0117]
其中,pf
ik
表示供能站i的油品k配送收益;r
i
q
ik
d
0i
表示订单的绝对收益,即供能站支付的购买油品的费用;β
i
ν
ik
表示该订单的断供惩罚成本;d
(i

1)i
c表示运输成本。
[0118]
为方便描述,引入“订单池”的概念,将未分配的订单全部放入订单池中。
[0119]
改进变邻域搜索算法的整体步骤如下:
[0120]
step1、以订单的单位时间收益最大为插入准则,利用前向插入启发式算法(push forward insertion heuristic,pfih)构造初始解;
[0121]
step2、通过邻域扰动,将部分订单从当前解移入订单池;
[0122]
step3、以订单的单位时间收益最大为插入准则,在订单池中选取部分订单重新插入到当前解中,以生成局部最优解;
[0123]
step4、通过调整局部最优解的访问次序,对局部最优解进行优化,以获取配送解,从而提高算法的收敛速度和求解质量;
[0124]
step5、对步骤step2

step4进行迭代,将迭代过程中更优的配送解作为历史最优解,且当历史最优解连续不更新预设迭代次数时,将历史最优解输出,以得到最优配送方案。
[0125]
下面着重介绍算法的领域扰动和局部优化过程。本实施例基于多交货期的问题特点,设计了交货期移除算子(due time removal,dtr)。交货期移除算子通过调整配送车到站时刻与订单交货期之间的差距来减少断供惩罚成本,增强算法的局部寻优能力。该算子是指随机移除油品订单交货期与配送车到站时刻不符的λ个订单,即交货期早于配送车到达时刻,配送车延时到达,或者交货期晚于配送车运输时间窗结束时刻。其中,λ∈[1,n
od
],n
od
表示当前解中交货期与配送车到达时刻不符的订单总数。
[0126]
算法的邻域扰动和局部优化过程,参照图2所示。图2中,s0表示原解,其由一系列行程x
11
,x
12
,...,x
ml
组合而成。x
ml
表示配送车m第l次行程中车舱与配送订单的集合,o
i,k
表示供能站为i油品为k的订单。s1表示经过邻域扰动后的解。若使用交货期移除算子进行邻域扰动,则选择行程x
ml
中交货期与配送车到站时刻不符的订单,然后将其从s0中移除,由此得到解s1。s2表示经过局部优化后的解。将订单池中的订单按单位时间收益从大到小排列,然后依次将满足约束的订单重新插入到解s1对应的空舱中,直到无剩余空舱,由此得到解s2。
[0127]
为验证本文提出的改进的变邻域搜索算法(ivns)的求解效果,将其与变邻域搜索算法(vns)和自适应大邻域搜索算法(alns)进行对比分析。为保证不同算法对比的公平性,vns和alns算法的初始解构造方法和终止条件均与本文ivns算法保持一致。对每组算例分别采用三种算法求解10次,记录并计算10次结果的最优值(元)、平均值(元)、标准差和cpu
平均时间(秒)。三种算法的实验结果如表4所示。
[0128][0129]
表4三种算法的运行结果
[0130]
根据表4可以得出以下结论:
[0131]
(1)最优值:ivns算法所求得的最优值均优于另外两种算法;
[0132]
(2)平均值:相比于vns算法和alns算法,ivns算法平均优化率分别为7.67%(最高为15.71%)、2.95%(最高为9.35%),ivns算法的求解质量最优;
[0133]
(3)运行耗时:ivns算法运行耗时均小于另外两种算法,收敛速度更快;
[0134]
(4)标准差:ivns算法所得结果的大部分标准差小于另外两种算法,具有更好的稳定性。
[0135]
以算例s23

o69

v6

c3

16000和s50

o150

v14

c3

16000为例,设定最大迭代次数为400,比较两组算例在三种算法下的搜索过程,分别如图3和4所示。从图3和4可看出ivns算法在三种算法中收敛速度最快,并且最终可获得更优的配送收益值。以上对比表明,加入后期优化过程能在保证解的质量的前提下加快本文算法的收敛速度。
[0136]
此外,本文还通过断供惩罚成本来衡量配送及时性,断供惩罚成本越小,意味着配送及时性越高。为比较不同算法求解结果的配送及时性,计算每种算法所得解在16组算例下的断供惩罚成本,结果如图5所示。从图5中可看出,在16组算例中,利用ivns算法所得解的断供惩罚成本均小于另外两种算法所得结果,说明ivns算法在最大化配送收益的同时,还能有效提高配送及时性。
[0137]
表5是使用ivns算法前后部分算例的各项结果对比。表中数据形式为“a/b”,其中,“a”为使用算法后所得结果,“b”为使用算法前所得结果。
[0138]
算例名称派单数对比断供订单数对比收益对比(单位:元)1

s23

069

v5

c3

800067/5914/2528335/15432
2

s23

069

v5

c3

1600065/5816/2757466/356863

s23

069

v5

c4

800068/6112/1829315/195324

s23

069

v5

c4

1600064/5615/2454585/309565

s23

069

v6

c3

800069/6012/2028599/165226

s23

069

v6

c3

1600067/5612/2361064/356217

s23

069

v6

c4

800068/6015/2230919/189528

s23

069

v6

c4

1600066/5713/2061144/36523
[0139]
表5使用ivns算法前后结果对比
[0140]
实施例二:
[0141]
参照图6,本实施例,提供基于变邻域搜索算法的油品二次物流配送优化系统,包括分别与求解模块联接的距离信息获取模块、时间信息获取模块、油库信息获取模块、供能站信息获取模块、模型建立模块;
[0142]
距离信息获取模块,用于获取距离信息,距离信息包括油库、各供能站之间的距离;
[0143]
时间信息获取模块,用于获取时间信息,时间信息包括配送车在油库、各供能站之间运输所需的行驶时间;
[0144]
油库信息获取模块,用于获取油库信息,油库信息包括油库配备的配送车数量、单位距离运输成本以及各配送车车舱容量大小、运输时间窗;
[0145]
供能站信息获取模块,用于获取供能站信息,供能站信息包括各供能站的单位时间惩罚成本、油品单位收益、各油品订单需求量、各油品订单交货期;
[0146]
模型建立模块,用于建立考虑运输时间窗约束以及油品订单交货期约束的最大化配送收益模型;
[0147]
求解模块,用于根据获取的距离信息、时间信息、油库信息、供能站信息,并基于变邻域搜索算法,对最大化配送收益模型进行求解,以得到最优配送方案。
[0148]
需要说明的是,本实施例提供的基于变邻域搜索算法的油品二次物流配送优化系统,与实施例一类似,在此不多做赘述。
[0149]
以上所述的实施例仅仅是对本发明的优选实施方式进行描述,并非对本发明的范围进行限定,在不脱离本发明设计精神的前提下,本领域普通技术人员对本发明的技术方案作出的各种变形和改进,均应落入本发明的保护范围内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1