一种求解多目标多车场带时间窗车辆路径问题的智能算法的制作方法

文档序号:11143636阅读:582来源:国知局
一种求解多目标多车场带时间窗车辆路径问题的智能算法的制造方法与工艺

本发明涉及物流调度算法领域,更具体地,涉及一种求解多目标多车场带时间窗车辆路径问题的智能算法。



背景技术:

物流是第三产业,是关系国家经济发展的重要行业。特别是随着生活水平的提高以及电子商务的发展,物流行业的发展越来越受到重视。车辆路径问题(VRP)作为物流配送中重要的一环,是一个具有高度现实意义的研究课题。在车辆路径问题中,多车场带时间窗车辆路径问题(MDVRPTW)是一个重要的变种。现实生活中许多配送场景能够抽象为MDVRPTW。在该问题中,多个车场的存在以及客户时间窗的存在,使得问题的求解较VRP问题难度更高。

传统的解决MDVRPTW问题的算法,一般仅仅考虑单个目标的优化,如采用禁忌搜索,变邻域搜索,遗传算法等等。然而MDVRPTW问题在本质上是一个多目标问题,不仅仅要考虑车辆的行驶花销,还需要考虑客户满意度、人员工作时长等等问题。近年来,出现了一些求解多目标MDVRPTW的算法。然而在这些算法中,大多数仍然采用单目标的思路对多目标MDVRPTW进行求解。大多数算法对目标预先进行优先级排序,再依据每个目标的优先级依次进行优化。而在实际生活中,各个目标的优先级往往是不能确定的,因此更合理的方法应该是平等优化每一个目标,即用多目标的视角求解MDVRPTW。

以多目标视角求解多目标MDVRPTW,不仅需要考虑MDVRPTW本身作为复杂组合优化问题的特性,针对问题特性设计高效的优化算子,还需要考虑多目标优化的特性,在求解过程中权衡收敛性以及多样性。智能算法作为一类元启发式算法,在求解多目标问题上取得了较好的成果。



技术实现要素:

本发明提供一种效果较好的求解多目标多车场带时间窗车辆路径问题的智能算法。

为了达到上述技术效果,本发明的技术方案如下:

一种求解多目标多车场带时间窗车辆路径问题的智能算法,包括以下步骤:

S1:在决策空间中寻找极值解;

S2:利用寻找到的极值解,在整个决策空间中搜索一组兼顾收敛性与多样性的解。

进一步地,所述步骤S1的具体过程如下:

S11:根据给定的多车场带时间窗车辆路径问题的服务需求,初始化寻找极值解的初始种群PI,其种群大小为NI

S12:以种群PI中的个体初始化存档A,存档用于收集求解过程中得到的非占优解;

S13:从PI中随机选取出两个个体x1和x2,交叉产生一个子代个体oI,重复NI次产生子种群Q,以Q中个体更新存档A得到新的存档A1,令A=A1;

S14:使用局部搜索优化Q中的个体,得到种群Q1,以Q1中个体更新存档A得到新的存档A2,令A=A2;

S15:使用快速非占优排序及极值拥挤距离从PI∪Q1中选取出NI个个体PI',令PI=PI';

S16:重复步骤S13-S15直到评估次数达到eI,输出种群PI

进一步地,所述步骤S2的具体过程如下:

S21:生成一组均匀分布的向量个数为NII

S22:基于欧几里德距离,为每个向量Λi计算得到一组距离最近的向量从而得到向量Λi的邻域向量集合B(i)={i1,i2,i3,...,iT};

S23:种群PI交叉产生NII个个体Q2,基于切比雪夫方程从PI∪Q2中不重复地为每个向量选取最优的个体;

S24:对于任意i∈{1,2,3,...,NII},从B(i)中选取两个下标p和q,个体xp和xq交叉产生子代oII,使用局部搜索优化得到x′,以x′更新存档A得到新的存档A3,令A=A3;

S25:对于B(i)中每个下标j,若gte(x′|Λj,z*)≤gte(xjj,z*),则令xj=x′;

S26:重复步骤S24-S25直到评估次数达到eII,输出存档A。

进一步地,f1为车辆数目,计算方式如下:

f1=|R|

f2为总行驶距离,包含每个车辆的行驶距离,计算方式如下:

其中,为路径的行驶距离;

f3为最长工作时间,是所有路径中最长的行驶时间,计算方式如下:

其中,为路径的行驶时间;

f4为总等待时间,当车辆提前于客户的时间窗到达时,必须进行等待,直到客户的服务时间窗开始才能进行服务,计算方式如下:

其中,为路径的等待时间;

f5为总延迟时间,当车辆在客户的时间窗之后到达,即产生延迟时间,计算方式如下:

其中,为路径的延迟时间。

进一步地,所述局部搜索的过程如下:

S41:令p=random(0,1),若p<pinter,则随机选取一个车场间操作,否则随机选取一个车场内操作;

S42:使用选取的操作,根据gte(x|λ,z*)对解x进行优化,替换策略为最优提升策略;

S43:重复步骤S41-S42直到达到搜索深度Imax,结束局部搜索过程。

与现有技术相比,本发明技术方案的有益效果是:

本发明提出了一种新型的智能算法,基于进化算法,结合了局部搜索算法,并采用两阶段化策略权衡算法求解过程中种群的收敛性及多样性,在求解多目标MDVRPTW问题上得到较好的结果。

附图说明

图1为多目标MDVRPTW问题的解的示意图;

图2为多目标MDVRPTW问题的解的表示的示意图;

图3本算法的基本流程图;

图4局部搜索的邻域结构组织图。

具体实施方式

附图仅用于示例性说明,不能理解为对本专利的限制;

为了更好说明本实施例,附图某些部件会有省略、放大或缩小,并不代表实际产品的尺寸;

对于本领域技术人员来说,附图中某些公知结构及其说明可能省略是可以理解的。

下面结合附图和实施例对本发明的技术方案做进一步的说明。

实施例1

在多目标MDVRPTW中,每个车辆从一个车场出发,在服务了若干数量的客户之后,最终返回出发的车场。车辆有固定的容量限制,每个客户有固定的服务需求量以及服务时间窗。由于软时间窗有利于花销的优化,在本MDVRTTW模型中允许合理延迟客户的服务时间。在本算法中,要求所有解均为合法解。

图1-2所示为一个解及其编码表示。每一个车场有若干条路径,第d个车场的第r条路径表示为所有路径的集合表示为R,第d个车场的所有路径集合为Rd,所有车场的集合表示为D。在本多目标MDVRPTW模型中,优化目标为

min F=(f1,f2,f3,f4,f5)

每个目标代表的意义及其评估方式如下。

f1为车辆数目,计算方式如下:

f1=|R|

f2为总行驶距离,包含每个车辆的行驶距离,计算方式如下:

其中,为路径的行驶距离。

f3为最长工作时间,是所有路径中最长的行驶时间,计算方式如下:

其中,为路径的行驶时间。

f4为总等待时间,当车辆提前于客户的时间窗到达时,必须进行等待,直到客户的服务时间窗开始才能进行服务,计算方式下:

其中,为路径的等待时间。

f5为总延迟时间,当车辆在客户的时间窗之后到达,即产生延迟时间,计算方式如下:

其中,为路径的延迟时间。

如图3所示,问题求解过程分为两个阶段。第一个阶段负责在决策空间中寻找极值解,第二阶段利用寻找到的极值解,在整个决策空间中进一步搜索一组兼顾收敛性与多样性的解。两个阶段的具体步骤如下:

第一阶段使用基于极值拥挤距离的带精英策略非占优排序遗传算法混合局部搜索(EC-NSGA-II+LS),在决策空间中寻找极值解(单个目标上取得极大极小值的非占优解):

(1)根据给定的多车场带时间窗车辆路径问题的服务需求,初始化寻找极值解的初始种群PI,种群大小为NI

(2)以种群PI中的个体初始化存档A,存档用于收集求解过程中得到的非占优解;

(3)从PI中随机选取出两个个体x1和x2,交叉产生一个子代个体oI,重复NI次产生子种群Q,以Q中个体更新存档A得到新的存档A1,令A=A1;

(4)使用局部搜索优化Q中的个体,得到种群Q1,以Q1中个体更新存档A得到新的存档A2,令A=A2;

(5)使用快速非占优排序及极值拥挤距离从PI∪Q1中选取出NI个个体PI',令PI=PI';

(6)重复步骤(3)~(5)直到评估次数达到eI,输出种群PI

第二阶段使用基于分解的多目标进化算法混合局部搜索(MOEA/D+LS),在第一阶段求解得的最终种群的基础上,进一步优化得到一组兼顾收敛性及多样性的解。使用切比雪夫方程将问题分解为多个单目标子问题,其中λ为给定的向量,z*为参考点。具体流程如下:

(1)生成一组均匀分布的向量个数为NII

(2)基于欧几里德距离,为每个向量Λi计算得到一组距离最近的向量从而得到向量Λi的邻域向量集合B(i)={i1,i2,i3,...,iT};

(3)种群PI交叉产生NII个个体Q2,基于切比雪夫方程从PI∪Q2中不重复地为每个向量选取最优的个体;

(4)对于任意i∈{1,2,3,...,NII},从B(i)中选取两个下标p和q,个体xp和xq交叉产生子代oII,使用局部搜索优化oII得到x′,以x′更新存档A得到新的存档A3,令A=A3;

(6)对于B(i)中每个下标j,若gte(x′|Λj,z*)≤gte(xjj,z*),则令xj=x′;

(7)重复步骤(4)~(5)直到评估次数达到eII,输出存档A。

局部搜索中使用到的邻域结构如图4所示,分为车场间操作及车场内操作。车场间操作包含Shift、Swap和LNS三种算子,车场间操作包含Shift、Swap、LNS、2-opt、2-opt*和Or-opt六种算子。使用多种搜索算子,以避免搜索陷入局部最优。搜索深度为Imax。基于搜索的方向λ,局部搜索的具体步骤如下:

(1)令p=random(0,1),若p<pinter,则随机选取一个车场间操作,否则随机选取一个车场内操作;

(2)使用选取的操作,根据gte(x|λ,z*)对解x进行优化,替换策略为最优提升策略;

(3)重复步骤(1)~(2)直到达到搜索深度Imax,结束局部搜索过程。

在两个阶段中,所使用的搜索方向的说明如下。在第一阶段中,采用了10个向量进行局部搜索,分别为5个优化单个目标的向量,形如(1,0,0,0,0),以及5个优化4个目标的向量,形如(0.25,0.25,0.25,0.25,0)。进行优化时,每个方向根据gte选取NI/10个子代进行局部搜索。在第二阶段中,每个个体的搜索方向与当前子问题的向量是一致的。

本算法的各个参数设置如下,第一阶段种群大小NI=100,第二阶段种群大小NII=495,向量邻域大小T=5,车场间搜索的概率pinter=0.1,局部搜索的深度Imax=10,算法的第一阶段与第二阶段评估次数比率eI:eII为1:3。

采用非对称的多目标MDVRPTW算例评估算法,算例数目为90个。非对称的多目标MDVRPTW算例是从Castro-Gutierrez等人的多目标VRPTW算例扩展而来的,通过聚类将每个算例的车场数目由1个增加至4个和6个。为了验证本算法的有效性,分别与基于分解的多目标进化算法(MOEA/D)以及多方向局部搜索算法(MDLS)对比。每个算法在每个算例上均运行30次,每次运行的评估次数均为99000次。

结果的对比是在多目标算法评估指标HV及IGD上进行的,同时对结果进行了Wilcoxon符号秩检验,显著性水平为0.05。结果如下:在HV指标上,本算法在46个算例上显著优于MOEA/D,在12个算例上显著差于MOEA/D,在57个算例上显著优于MDLS,在21个算例上显著差于MDLS;在IGD指标上,本算法在55个算例上显著优于MOEA/D,在9个算例上显著差于MOEA/D,在72个算例上显著优于MDLS,在17个算例上显著差于MDLS。结果表明,本算法在三个算法中表现较好。

相同或相似的标号对应相同或相似的部件;

附图中描述位置关系的仅用于示例性说明,不能理解为对本专利的限制;

显然,本发明的上述实施例仅仅是为清楚地说明本发明所作的举例,而并非是对本发明的实施方式的限定。对于所属领域的普通技术人员来说,在上述说明的基础上还可以做出其它不同形式的变化或变动。这里无需也无法对所有的实施方式予以穷举。凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明权利要求的保护范围之内。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1