【论】[Szeto] GRASP with path relinking for the selective pickup and delivery problem

GRASP with path relinking for the selective pickup and delivery problem

在这里插入图片描述


@article{2016GRASP,
title = {GRASP with path relinking for the selective pickup and delivery problem},
journal = {Expert Systems with Applications},
volume = {51},
pages = {14-25},
year = {2016},
issn = {0957-4174},
doi = {https://doi.org/10.1016/j.eswa.2015.12.015},
url = {https://www.sciencedirect.com/science/article/pii/S0957417415008179},
author = {Sin C. Ho and W.Y. Szeto},
}

参考链接:

集锦

  • 我们研究选择性取货和投递问题。
  • 我们提出了一个具有路径重新链接的 GRASP 来解决所描述的问题。
  • 启发式算法易于实现并且只有三个参数。
  • 启发式可以使用较小的计算时间生成高质量的解决方案。
  • 启发式将文献中的现有结果平均提高了 5.72%。

摘要

自行车共享系统现在非常流行。其特点之一是,自行车是从一些过剩的自行车站上取走,并由一辆容量有限的重新定位车运送到所有短缺的自行车站,以满足短缺自行车站的需求。受现实世界自行车重新定位问题的启发,我们研究了选择性取货和送货问题,其中每个送货节点的需求都必须通过从取货节点的子集收集的供应来满足。目标是最小化访问节点所产生的总旅行成本。我们提出了一个具有路径重新链接的 GRASP 来解决所描述的问题。实验结果表明,这种简单的启发式改进了文献中的现有结果,使用较小的计算时间平均改进了 5.72%。

关键词:取件和送货路线;GRASP;重新链接

小结


  1. 简介GRASP
    GRASP(Greedy Randomized Adaptive Searh Procedures)是一个用于求解组合优化问题的multi-start元启发式算法,每一次迭代都包含以下两个阶段:构造(construction)和局部搜索(local search)。在构造阶段会构建一个可行解,在局部搜索阶段会对可行解的邻域进行搜索直到找到局部最优解。
    \qquad上述是基本GRASP的思路,可以采用下述几种方式对算法进行优化:Reactive GRASP,cost perturbation,bias function,memory and learning,path-relinking。同时,GRASP可以采用同步策略,使用多线程方法加快最优解寻优速度。

1. introduce

取货和送货问题 pickup and delivery problem(PDP) 是最重要的问题类别之一,因为其模型具有各种物流应用,例如逆向物流、运输货物、拨号系统、饮料配送和空罐收集和瓶子,自行车重新定位操作等。它旨在确定在节点之间分配商品的路线,以最小化总运输成本。文献中研究了 PDP 的不同变体。

Berbeglia、Cordeau、Gribkovskaia 和 Laporte (2007)根据 PDP 的结构、部署车辆的数量以及节点中的取货和交付活动对 PDP 的变体进行分类。结构准则根据数量将 PDP 分为一对一 (1-1)、一对多对一 (1-M-1) 和多对多 (MM) 方案商品的原产地和目的地。一对多一对一方案,将仓库中的商品配送至配送节点,取货节点中的商品运输至仓库;一对一方案中,每件商品恰好有一个取货节点和一个发货节点。在多对多方案中,任何节点都可以作为任何商品的起点或终点。部署车辆数量的标准将 PDP 分为单车和多车情况。活动标准根据在节点处执行取货和送货操作的方式对 PDP 进行分类。在这种分类下,许多 PDP 研究可以明确分类。

表 1根据Berbeglia 等人制定的方案比较了 PDP 的不同变体。(2007),节点特征,车辆特征和表2给出了变体和求解方法的缩写。节点特征包括选择性、仓库供应/需求、时间窗口、取货和交付操作以及完美平衡要求。节点的选择性是指是否需要访问所有节点。仓库供应/需求关系到仓库是供应还是接收商品。时间窗定义了车辆访问节点的时间段。取货和送货操作涉及取货或送货活动是在一个节点上执行,还是这两个活动是在一个节点上单独或同时执行。完全平衡要求与总供给是否等于总需求有关。车辆特征包括车辆的数量和容量。

在这里插入图片描述
显然,分类并没有完全列出 PDP 中的所有元素,例如商品的种类数量或边约束等,但应该足以区分选择性取货和送货问题selective pickup and delivery problem (SPDP) 的五个特征,即也是 M-M 方案下 PDP 的变体。
首先,与现有的 1-M-1 和 M-M PDP 变体不同,SPDP 不需要仓库提供商品。
其次,SPDP 没有与取货和送货节点相关的时间窗口约束。
第三,根据问题设置,在客户节点执行取货或交付。
第四,不需要满足完美的平衡要求。
第五,一些节点没有被访问。

与其他考虑选择性的 PDP 研究不同,SPDP 要求车辆仅访问部分而非全部取货节点,以便为所有交付节点收集足够的商品。此外,尽管每个取货活动都有车辆容量限制,但配送活动还有另一个限制,以确保一旦车辆访问相应的节点(即分裂或不完整),车辆必须有足够的商品来满足配送客户的需求不允许送货)。这是这个问题的两个显着特征 ( Ting & Liao, 2013). SPDP 与使用成本最小化原则向客户提供足够商品的应用程序相关,同时不需要访问所有取货节点。一个说明性的例子是单车自行车重新定位问题,其中自行车从一些多余的自行车站拿起,并由容量有限的重新定位车辆使用最短路线运送到所有不足的自行车站。鉴于总盈余大于总赤字且所有自行车都是相同的,因此没有必要访问所有盈余自行车站来满足每个赤字站的需求。因此,为了降低运输成本,不访问一些多余的站点。

尽管有与 SPDP 相关的实际应用,但只有Ting 和 Liao(2013)提出并研究了这个问题,如表 1所示。正如他们所认识到的,SPDP 是一个 NP-hard 问题,采用精确的方法来解决实际大小的实例是不切实际的。因此,他们采用元启发式方法并提出了一种解决 SPDP模因算法 memetic algorithm。通过比较模因算法与遗传算法 genetic algorithm禁忌搜索tabu search的结果来说明其性能。然而,如表 1最后一列所示,许多现有的启发式方法可以非常成功地解决 PDP 的变体. 这些启发式算法及其混合算法可能会提供更好的性能。

表 1还显示,尽管 GRASP 在解决组合优化问题和工业应用方面取得了成功,但在极少数 PDP 研究中被考虑(Festa & Resende,2011)。GRASP 是一种多起点启发式算法,用于为组合优化问题生成不同的解决方案。GRASP 的每次迭代都有两个阶段。在第一阶段,基于贪婪greediness和随机性的一些原则构建新的解决方案。然后,在第二阶段通过局部搜索改进解决方案。然而,Resende 和 Ribeiro (2010)表示,可以通过采用微调机制、多个邻域和路径重新链接来提高 GRASP 的搜索效率。

路径重新链接Path relinking(PR) 作为一种进化方法,通过组合来自一对精英解决方案(定义为初始解决方案和指导解决方案)的元素来生成解决方案。基本假设是,一个问题的好的解决方案应该具有一些共同的特征,并且人们可以期望在逐步走向精英解决方案时获得更好的解决方案。许多研究表明,GRASP 与路径重新链接的混合可以在不同的组合优化问题上取得有竞争力的结果,例如车辆路径(Campos,Marti,Sánchez-Oro,Duarte,2014 年,Souffriau,Vansteenwegen,Berghe,Oudheusden,2010 年),弧形路径( Reghioui, Prins, Labadi, 2007 , Usberti, França, França, 2013 ), capacitated clustering (Deng 和 Bard,2011 年)、作业车间调度(Aiex、Binato 和 Resende,2003 年)、农村公路网开发(Scaparra 和 Church,2005 年)和网络负载平衡(Santos、de Sousa 和 Alvelos,2013 年)。

在当前的文献(2014-2015)中,我们可以找到 GRASP 与路径重新链接的几种应用。在坎波斯等人。(2014),作者将混合启发式应用于定向问题并取得了竞争性结果。作者测试了关于如何构建贪婪随机初始解决方案的不同策略,其中这些解决方案通过由四种不同邻域算子组成的局部搜索得到改进。路径重新链接应用于从 GRASP 获得的解决方案。Morán-Mirabal、González-Velarde 和 Resende(2014 年)针对家庭旅行推销员问题提出了具有路径重新链接的 GRASP 。路径重新链接集成在 GRASP 中,与Campos 等人有点不同。(2014). 首先,在局部搜索过程路径重新链接之后仅应用于由局部最优解和其中一个精英解组成的一对解。其次,将更进化的路径重新链接应用于每对精英解决方案。由于计算负担,第二次路径重新链接仅应用一次。Santos 和 Xavier (2015)提出了一个 GRASP,其中包含用于动态拨号问题的路径重新链接。路径重新链接利用三个不同的运算符来生成解决方案。计算实验表明,他们的启发式算法比 GRASP 算法表现更好。Ríos-Mercado 和 Escalante (2016)发现了一个非路由应用程序. 作者将混合启发式应用于商业区划问题。他们研究了在 GRASP 中集成路径重新链接与将其放置在 GRASP 之后作为优化后阶段的效果。他们的结果表明,后一种选择取得了最好的结果。

除了与 GRASP 混合路径重链接外,还可以找到与禁忌搜索混合的路径重链接 ( Jia, Hu, 2014 , Lai, Hao, 2015 , Peng, Lü, Cheng, 2015 , Urrutia, Milanés, Løkketangen, 2015 ),本地搜索 ( Yang, Zhang, & Zhu, 2015 ), population-based metaheuristics ( de Oliveira, Enayatifar, Sadaei, Guimarães, Potvin, 2015 , Hamdi-Dhaoui, Labadie, Yalaoui, 2014 , Marinakis, Marinaki, 2015 , Martí, Corberán, Peiró, 2015 年,Ribas,Companys,Tort-Martorell,2015 年)和基于数学规划的方法(de Oliveira、Lorena、Chaves、Mauri,2014 年; Li、Chu、Prins、Zhu,2014 年)。路径重新链接的一个重要组成部分是用于从初始解决方案移动到引导解决方案的邻域算子。最近发表的 16 篇文章的一个共同观察是,作者使用简单的问题相关运算符来创建中间解决方案(即路径),这些解决方案将指导解决方案的属性考虑在内。例如,对于Campos 等人的定向问题。(2014),通过将节点(存在于指导解决方案中)插入初始解决方案并从解决方案中删除节点(不存在于指导解决方案中)形成中间解决方案。另一个例子是商业区划问题(Ríos-Mercado & Escalante, 2016),其中通过将节点从其领土迁移到另一个领土而不使领土断开连接来创建新的中间解决方案。传统上,当中间解与引导解重合时,路径结束。然而,也有可能在到达引导解之前终止路径( Jia, Hu, 2014, Morán-Mirabal, González-Velarde, Resende, 2014 , Santos, Xavier, 2015 , Urrutia, Milanés, Løkketangen, 2015)。读者可以参考Ribeiro 和 Resende (2012),了解有关如何设计路径重新链接程序的更多想法/策略。

本文提出了一种基于 GRASP 和路径重新链接的混合启发式算法,用于解决选择性取货和配送问题。所提出的方法的优势之一是它的简单性:启发式依赖于简单的原则来构建解决方案、改进解决方案、更新解决方案池并根据初始解决方案和指导解决方案生成路径。在建议的路径重新链接中,使用了不同的策略。不是在引导解决方案处终止路径(这通常是当前文献中选择的策略),而是在到达引导解决方案之前截断路径(即截断路径重新链接),或者路径可能延伸到引导解决方案之外(即外部路径重新链接)。该算法不会先验地决定应用哪种形式(截断的或外部的)。它取决于初始解和引导解对、用于创建路径的路径重新链接算子和终止条件。总的来说,启发式很容易实现,启发式只需要三个参数。尽管它很简单,但所提出的方法也是有效和高效的。启发式是在文献中使用的一组 90 个基准实​​例上进行评估的。这种启发式改进了模因算法在 88 个实例上获得的结果,使用平均不到 30 秒的计算时间平均改进了 5.72%。我们论文的贡献如下:(1) 我们在我们的混合算法中提出了一种不同的路径重新链接策略来解决选择性拾取和交付问题,并且 (2) 与文献中使用的模因算法相比,所提出的算法简单、有效和高效。预计我们提出的算法可以为现实世界自行车重新定位操作的高效和有效算法的开发做出贡献。

本文的结构如下。第 2 节介绍了 SPDP 的完整数学公式。第 3 节描述了所提出的启发式方法。第 4 节说明计算结果并与文献中的结果进行比较。第 5 节给出了结论。

2. Mathematical formulation

2.1. Problem setting

考虑由节点和边形成的完整图。节点可以分为三类:pickup nodes, delivery nodes, and the depot。每个取货节点都提供相同类型的商品,但供应量因取货节点而异。需求与每个交付节点相关联,并且需求可能在交付节点之间变化。depot不要求也不供应任何商品,但车辆可以非空车返回场站。单个载重量有限的车辆用于将车辆负载从部分取货节点运送到所有配送节点,以满足每个配送节点的需求。每个拾取节点最多被访问一次。每次访问取货节点时,都需要将所有供应品装载到车辆上,并且由此产生的车辆负载不得超过车辆容量。每个交付节点只被访问一次。对于每次访问交付节点,车辆负载必须足以满足需求。节点之间的每次旅行都会产生成本。目标是确定从站点开始到站点结束的最小成本路线,以满足上述要求。

2.2. Problem formulation

在这里插入图片描述
基于上述符号,SPDP可以用数学公式表示如下:
在这里插入图片描述
Eq(1)陈述了 SPDP 的目标,即最小化车辆的总行驶成本。约束条件(2)确保每个拾取节点最多被访问一次。约束条件(3)要求每个交付节点和仓库必须恰好被访问一次。约束(4)确保车辆负载不大于车辆容量。约束(5)描述了访问节点前后车辆负载之间的关系,它们的差值必须等于访问节点的需求或供应。约束(6)消除了节点之间的子旅行。约束(7) – (9)将决策变量定义为二元或非负数。请注意,由于 d i d_i di的整数性和约束(5), l i j l_{ij} lij在最优时采用整数值。

与Ting 和 Liao (2013)的公式相比,我们的公式以不同方式表示子巡回消除约束,并且具有比他们更多的决策变量。更重要的是,我们的公式已经明确关联了每条弧( i,j )的车辆负载和相应的指示变量 y i j y_{ij} yij,用于定义弧 ( i , j ) (i,j) ij是否在巡回,因此我们的公式可以直接用于通过 CPLEX 求解精确解,以便在需要时与启发式方法的结果进行比较。

3. The hybrid algorithm

在本文中,提出了一种基于 GRASP ( Feo & Resende, 1995 ) 和 Path relinking ( Glover & Laguna, 1993 ) 的混合算法来解决选择性取货和投递问题selective pickup and delivery problemGRASP 的每次迭代中,都会构建一个初始解决方案,并通过局部搜索过程改进初始解决方案。从不同的迭代中获得的最佳解决方案被保存并返回给用户GRASP 的缺点是迭代相互独立。因此,作为克服这种独立性的补救措施,许多研究人员将路径重新链接包含在 GRASP 框架中(例如,Laguna & Martí,1999). 路径重新链接通过探索由 GRASP 找到的精英解决方案连接的路径来生成新的解决方案。路径重新链接已成功应用于不同的车辆路径问题(例如,Ho、Gendreau,2006 年;Souffriau、Vansteenwegen、Berghe、Oudheusden,2010 年;Campos、Marti、Sánchez-Oro、Duarte,2014 年)。因此,选择嵌入在 GRASP 中的路径重新链接来解决选择性取货和投递问题selective pickup and delivery problem

tour x x x 定义为 ( i 0 , i 1 , ⋯   , i n , i n + 1 ) (i_0,i_1,\cdots,i_n,i_{n+1}) (i0,i1,,in,in+1),where i 0 = i n + 1 i_0=i_{n+1} i0=in+1 (即仓库)和 i h ∈ N , h = 1 , 2 , ⋯   , n i_h\in \mathscr{N},h=1,2,\cdots,n ihN,h=1,2,,n,其中n$表示行程中接送节点的总数。对于解 x x x,令 f ( x ) f ( x ) f(x) 为其行程成本travel cost。travel cost是将与traversing的边 ( i u , i v ) (i_u,i_v) (iu,iv)相关的成本 c i u , i v c_{i_u,i_v} ciu,iv相加得到的。如果满足以下至少一项,则对选择性取货和投递问题selective pickup and delivery problem的游览是不完整的(或不可行的):
(1)并非每个送货节点都被访问;(2)没有访问拾取节点;(3) 违反车辆的装载约束。

算法 1中,在GreedyRandomized中构建了一个tour(详情请参见算法 2)。该子程序确保每个delivery节点都添加到tour中并且在tour中恰好出现一次。(即,该子程序确保不满足上一段中提到的第一个不可行条件)。然而,tour仍未完成。LocalSearch改进了不完整的游览。通过对参考集reference set R \mathscr{R} R和局部最优loacal optimum(细节可以在算法 3中找到)中的不完整游览incomplete tours应用PathRelinking生成新的不完整游览.。但是,不会在游览中添加或删除任何节点。UpdateR确定是否可以将不完整的游览包含在 R \mathscr{R} R. 在AddPickUpNodes中将 Pickup 节点添加到不完整游览incomplete tours中,直到构建的旅行满足加载约束(即,不违反第三个不可行条件)。请注意,要解决第三个不可行条件, AddPickUpNodes 过程必须将至少一个delivery节点添加到仅由pick up节点组成的不完整旅程中。这意味着该过程也隐含地满足了第二个不可行条件。

选择性取货和配送路由问题 selective pickup and delivery routing problem中,必须访问每个delivery node节点,但此要求不适用于pickup nodes节点。这导致了首先插入delivery nodes节点,然后插入pickup nodes节点的策略。这是因为pickup nodes节点通常比delivery nodes节点少,稍后插入pickup nodes节点可以降低搜索算法的复杂性。因此,在每次迭代中,程序GreedyRandomized、LocalSearch、PathRelinking和UpdateR 仅应用于具有delivery nodes 节点的游览。在AddPickUpNodes中将pick-up节点添加到未完成的游览中. 换句话说,我们提出的算法允许在程序GreedyRandomized中生成不可行的解决方案(即不完整的游览)并在程序LocalSearch、PathRelinking和UpdateR中维护,下一个程序AddPickUpNodes是恢复解决方案的可行性。找到的最佳解决方案在每次迭代中保存并作为最终结果返回。启发式运行固定次数的迭代 κ \kappa κ

在这里插入图片描述

在这里插入图片描述

3.1. Construction heuristic 构造启发式

最初的旅行是使用GRASP的基于价值的策略构建的(Festa & Resende,2011)。该策略允许通过参数α控制随机性,其中 α ∈ ( 0 , 1 ) α∈ (0, 1) α01)。该tour是通过一次插入one delivery node节点来构造的。delivery nodes是从一组未访问的delivery节点中随机选择的,这些节点的增量成本 c ( r ) = c i n r + c r i n + 1 − c i n i n + 1 c(r)=c_{i_nr}+c_{r_{i_{n+1}}-c_{i_ni_{n+1}}} c(r)=cinr+crin+1cinin+1不超过最佳贪婪选择,这是由最大增量成本和最小增量成本之间的差值的 α × 100 \alpha\times 100% α×100的贪婪选择。

算法 2 是一种顺序构造启发式算法,其中通过在tour结束时一次插入一个one delivery node节点来构建游览(即,在 i n i_n in i n + 1 i_{n+1} in+1),直到所有delivery节点都添加到游览中。该算法的时间复杂度为 O ( ∣ D ∣ 2 ) \mathscr{O}(|\mathscr{D}|^2) O(D2).此过程的输出是在仓库开始和结束的tour,并访问每个delivery node节点一次。
在这里插入图片描述

3.2. Local search 局部搜索

然后使用最佳改进策略通过 2-opt 改进游览 x。 2-opt是一个经典的邻里运算符,最初是为旅行推销员问题设计的(Lin,1965)。通过移除不相邻的弧获得相邻解 ( i u , i u + 1 ) (i_{u},i_{u+1}) (iu,iu+1) ( i v , i v + 1 ) (i_{v},i_{v+1}) (iv,iv+1),并添加arc ( i u , i v ) (i_u,i_v) (iu,iv) ( i u + 1 , i v + 1 ) (i_{u+1},i_{v+1}) (iu+1,iv+1)以完成tour。应用 2-opt,直到找不到任何改进。该算法的时间复杂度为 O ( ∣ D ∣ 2 ) \mathscr{O}(|\mathscr{D}|^2) O(D2).

3.3. Path relinking 路径重新链接

路径重新链接的目的是探索由成对的精英解决方案elite solutions连接的路径。该对解决方案中的一个被标记为初始解决方案initial solution,而另一个被标记为指导解决方案guiding solution。通过使用邻域运算符neighborhood operator 生成新解决方案,以逐渐将引导解决方案的属性引入新生成的解决方案,从而创建初始解决方案和引导解决方案之间的路径。随着程序的进行,新解决方案具有越来越多的引导解决方案属性,而初始解决方案的属性越来越少。

路径重新链接(参见流程 3)with O ( ∣ D ∣ 2 ) \mathscr{O}(|\mathscr{D}|^2) O(D2)应用于 ∣ R ∣ |\mathscr{R}| R对解,其中包含了局部最小解 x ^ \hat{x} x^和来自于参考集 R \mathscr{R} R精英解elite solution们。每对解决方案都要经过两轮路径重新链接。在第一轮中, x ^ \hat{x} x^承担初始解决方案的角色 x I x_I xI ,精英解决方案扮演指导解决方案的角色 x G x_G xG.角色在第二轮中切换。路径重新链接过程的每一轮在连续五次迭代后终止,而不会将指导解决方案中的新属性引入新生成的解决方案 x ˉ \bar{x} xˉ.这意味着从 x I x_I xI x G x_G xG路径在到达之前可能会被截断 x G x_G xG,或者这也可能意味着路径扩展到 x G x_G xG

邻域运算符 2-opt 用于生成新的解决方案。为了确保新生成的解决方案具有指导解决方案的属性,仅接受有效的解决方案。在这种情况下,属性是弧。都存在于 x I x_I xI x G x_G xG之间的弧arcs被锁定,这意味着无法通过移除锁定的弧来获得有效的解决方案。

T T T 是初始解 x I x_I xI和指导解 x G x_G xG之间的公共弧的集合,令 A I A_I AI A G A_G AG分别表示构成初始解和指导解的弧。用于创建从 x I x_I xI开始的路径的neighborhood operator是2-0pt.这里的2-opt和LocalSearch中的2-opt的区别是通过移除弧 ( i u , i u + 1 ) ∈ T (i_u,i_{u+1}) \in T (iu,iu+1)T ( i v , . i v + 1 ) ∈ T (i_v,.i_{v+1}) \in T (iv,.iv+1)T所获得的tours是不被考虑的。

有效相邻解决方案集定义为邻域 H \mathscr{H} H. 最小总距离(lowest total distance)的tour x ˉ \bar{x} xˉ是从 H \mathscr{H} H中选择的。不选择属性数量最多的tour的原因 x G x_G xG是算法很可能最终会以一条短路径结束。为了探索路径附近,首选长路径。与指导解一样, x ˉ \bar{x} xˉ中的任何弧记录在 T T T中。由于计算负担和首选长路径,每轮路径重新链接在连续五次迭代后终止,而不会遇到与 x G x_G xG增长相似的解。Local search改进了路径重新链接过程中遇到的最佳tour。

3.4. Updating the reference set R \mathscr{R} R

一个tour x ˉ \bar{x} xˉ被添加到参考集 R \mathscr{R} R如果参考集未满(即 ∣ R ∣ < R m a x |\mathscr{R}|<R_{max} R<Rmax,where R m a x R_{max} Rmax是可以存储在 R \mathscr{R} R 中的最大解决方案数)…如果参考集已满并tour b a r x bar{x} barx比参考集中最差的巡演好,那么最差的tour被 tour x ˉ \bar{x} xˉ 取代.此过程只需要 O ( 1 ) \mathscr{O}(1) O(1)时间。

3.5 Adding pickup nodes

Tour x = ( i 0 , i 1 , ⋯   , i n + 1 ) x=(i_0,i_1,\cdots,i_{n+1}) x=(i0,i1,,in+1)到目前为止,仅包含所有delivery nodes节点。为了构建可行的解决方案,需要在x中插入pick up节点,并考虑车辆容量约束。每次插入一个pick up节点,并选择pick up节点 r ^ \hat{r} r^和插入位置 p ^ \hat{p} p^基于最便宜的插入标准,并且包含不得违反车辆容量限制。添加pick up节点,直到解决方案变得可行。算法 4 中描述了完整的过程。它的时间复杂度为 O ( ∣ P ∣ 2 ) \mathscr{O}(|\mathscr{P}|^2) O(P2).

在这里插入图片描述

4. Computational experiments

启发式方法以C++编码,所有计算实验均在配备英特尔酷睿i5-2520M CPU@2.5 GHz的戴尔笔记本电脑上进行。通过一系列计算实验验证了混合算法的有效性。这些实验是在Ting和Liao(2013)描述的同一组测试实例上进行的,这些实例可从 https://db.tt/6ErosIg9 获得.这些实例中的节点数范围为 91 到 454。车辆容量从400到1000不等。总共 90 个实例。这些实例是从某些取件和交货实例修改而来的。实例表示为 X ( Y ) / Z X(Y)/Z XY/Z,其中 X 表示原始实例的名称,Y 表示节点数 ( N \mathscr{N} N),Z 表示拾取节点数 ( P \mathscr{P} P). γ γ γ是添加到每个拾取节点的original supply 上的additional supply(即, d i = d i + γ , ∀ i ∈ P d_i=d_i+\gamma,\forall i \in \mathscr{P} di=di+γ,iP)。.Ting和Liao(2013)比较了禁忌搜索(TS),遗传算法(GA)和模因算法(MA)获得的结果。他们的结果表明,MA的表现优于TS和GA。在下文中,将给出参数调整结果。然后,将从混合启发式(GRASP + PR)获得的结果以及GRASP的结果与MA的结果进行比较。

4.1. Parameter tuning

在这里插入图片描述
在这里插入图片描述

4.2. 比较 GRASPGRASP+PR

为了说明在巨猿生存方案框架内纳入路径重新链接程序的好处,下文详细介绍了从巨猿生存方案和巨猿生存方案+PR获得的结果之间的比较。比较是GRASP(省略算法5的第6-1行)和GRASP+PR的两个变体。第一个变体是算法 1 中所述的标准版本,而第二个变体是稍快的版本,其中 AddPickUpNode 仅在 κ 迭代完成后应用于参考集中的解(即,算法 7 的第 10-1 行移出 for 循环)。主要结果报告在表3和表4中。在这些表中,前三列显示实例的名称以及 γ 和 Q 的值,而其余列显示不同启发式方法的每个实例的平均旅行成本(超过 30 次试验)。从这些表中,可以观察到结果的质量取决于γ和Q的值。对于固定值 γ,随着 Q 的增加,平均差旅成本往往略好。这种改进可以通过以下事实来解释:当 Q 增加时,巡回中有更多可行的位置可以将拾取节点插入其中。对于 Q 的固定值,随着γ的增加,观察到结果的实质性改善。当γ增加时,需要的拾取节点更少。因此,总旅行成本降低。

第四列和第五列分别显示GRASP在100次和200次迭代中获得的结果。当运行 GRASP 进行更多迭代时,平均改进为 0.27%。接下来的四列分别显示了GRASP+PR的不同变体在50次和100次迭代中的结果。正如预期的那样,标准版本略好,平均改进了0.001%。为了在GRASP和GRASP+PR之间进行公平的比较,启发式方法之间消耗的计算时间应该大致相同。启发式方法的平均计算时间如表 5 所示。可以观察到,运行 GRASP 超过 100 (200) 次迭代和 GRASP+PR 超过 50 (100) 次迭代消耗的计算时间大致相等,但 GRASP+PR 具有更好的性能。GRASP和GRASP+PR之间的平均差距为0.74%(0.77%)。

我们已经证明,GRASP+PR比GRASP产生更好的解决方案。在下文中,我们将通过将其与Ting和Liao(2013)在同一组实例上提出的MA进行比较来进一步评估其性能。

4.3. 比较 GRASP+PR 和 MA

在这里插入图片描述

5. 结论

在本文中,我们提出了一种由GRASP和路径重新链接组成的混合启发式方法,用于选择性拾取和交付问题,该问题是由现实世界的自行车重新定位问题驱动的。路径重新链接使得进一步多样化和加强围绕GRASP获得的局部最小值的搜索成为可能。我们提出的路径重新链接使用与文献中不同的策略。路径可能会在到达导向解之前被截断,或者路径可能会延伸到导向解之外,而不是在引导解处终止路径。此外,我们的混合启发式搜索基于两个解决方案空间:不可行空间(其中游览仅由交付节点组成)和可行空间(其中游览由交付和取货节点组成)。该算法主要在不可行的空间中寻找好的游览,并在算法结束时切换到可行空间。启发式方法易于理解,易于实施,高效且有效。这些特征对于管理实时自行车重新定位操作非常重要。

在 90 个基准实例上进行了实验。计算实验表明,在GRASP框架中加入路径重联,无需额外的计算时间,即可将GRASP结果平均提高0.77%。此外,实验还表明,混合启发式方法对文献中已有结果的改进程度平均和最大分别提高了5.72%和6.79%。通过增加R.max和κ,但以增加计算时间为代价。

所提算法比MA获得了更好的结果,因为所提出的算法利用了最终只访问几个拾取节点的特点。因此,在添加几个拾取节点以获得更准确的解决方案之前,需要花费更多的精力来搜索交付节点的最佳顺序。学到的主要教训是,将问题的属性合并到算法中以快速获得良好的解决方案非常重要。

尽管结果表明我们提出的启发式方法比MA表现更好,但在算法方面和发现方面存在一些限制。所提出的启发式方法的一个限制是,在结果的平均改进和最大改进之间仍然存在 1% 的差距。这表明并不总是能够实现高质量的解决方案。另一个限制是,当需要大量接送节点时,所提出的启发式算法可能无法很好地工作,因为所提出的算法首先侧重于生成仅由交付节点组成的良好游览,然后在最后添加拾取节点以使游览完整可行。第三个限制是我们的比较可能有点有限,因为我们只将GRASP+PR与MA进行了比较,而MA又与Ting和Liao(2013)的GA和禁忌搜索进行了比较。然而,这些是文献中为所研究的问题开发的唯一现有算法。另一个限制是,我们只使用了Ting和Liao(90)提供的2013个实例进行比较,因此我们的实验结果和结论是基于这些实例的。但是,这些实例不会捕获车辆容量小的情况,或者改变取货节点数和交付节点数之间的比率。

可以执行以下未来工作。首先,作为对所提出的算法的第一个限制的补救措施,我们可以用更复杂的方法(例如禁忌搜索)替换第 3.2 节中的本地搜索组件。而不是贪婪的随机构造启发式,我们可以有一个废墟和重新创建过程,其中解决方案不是从头开始构建的(Schrimpf,Schneider,Stamm-Wilbrandt,&Dueck,2000)。目前,随机性只能在构造启发式中找到。我们还可以在路径重新链接过程中应用随机性。例如,我们可以进行随机选择或贪婪的随机选择,而不是在创建路径时做出贪婪的选择,这些选择等效于限制候选列表 RCL 的制作方式。其次,为了解决第二个算法限制,我们可以将可行的巡回传递给另一个过程以进行后期优化,其中可以应用不同的运算符以进一步改进解决方案。第三,未来的更多工作可以集中在设计其他搜索方法上,以解决关于很少算法比较的第三个限制。第四,我们可以生成更多的测试实例来检查结论的有效性。最后,除了上述算法研究方向外,我们还可以查看问题设置,使问题更加真实,特别是对于白天操作(例如,多条路线/车辆,拆分交付/取货,随机/动态选择性取货和交付问题)

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值