CN116957436A - 基于局部搜索增强的大领域搜索算法的车辆路径优化方法 - Google Patents
基于局部搜索增强的大领域搜索算法的车辆路径优化方法 Download PDFInfo
- Publication number
- CN116957436A CN116957436A CN202310765823.2A CN202310765823A CN116957436A CN 116957436 A CN116957436 A CN 116957436A CN 202310765823 A CN202310765823 A CN 202310765823A CN 116957436 A CN116957436 A CN 116957436A
- Authority
- CN
- China
- Prior art keywords
- operator
- vehicle
- solution
- vehicle path
- node
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000010845 search algorithm Methods 0.000 title claims abstract description 28
- 238000000034 method Methods 0.000 title claims abstract description 25
- 238000005457 optimization Methods 0.000 title claims abstract description 22
- 230000035772 mutation Effects 0.000 claims abstract description 15
- 238000010276 construction Methods 0.000 claims abstract description 10
- 238000012545 processing Methods 0.000 claims abstract description 7
- 239000011159 matrix material Substances 0.000 claims description 30
- 238000003780 insertion Methods 0.000 claims description 25
- 230000037431 insertion Effects 0.000 claims description 25
- 238000002922 simulated annealing Methods 0.000 claims description 15
- 108090000623 proteins and genes Proteins 0.000 claims description 10
- 238000012217 deletion Methods 0.000 claims description 4
- 230000037430 deletion Effects 0.000 claims description 4
- 230000003044 adaptive effect Effects 0.000 claims description 3
- 238000000137 annealing Methods 0.000 description 5
- 230000001066 destructive effect Effects 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 2
- 238000011160 research Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000002474 experimental method Methods 0.000 description 1
- 230000002068 genetic effect Effects 0.000 description 1
- 230000001737 promoting effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/08—Logistics, e.g. warehousing, loading or distribution; Inventory or stock management
- G06Q10/083—Shipping
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N5/00—Computing arrangements using knowledge-based models
- G06N5/01—Dynamic search techniques; Heuristics; Dynamic trees; Branch-and-bound
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/04—Forecasting or optimisation specially adapted for administrative or management purposes, e.g. linear programming or "cutting stock problem"
- G06Q10/047—Optimisation of routes or paths, e.g. travelling salesman problem
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/08—Logistics, e.g. warehousing, loading or distribution; Inventory or stock management
- G06Q10/083—Shipping
- G06Q10/0835—Relationships between shipper or supplier and carriers
- G06Q10/08355—Routing methods
Landscapes
- Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Economics (AREA)
- Theoretical Computer Science (AREA)
- Human Resources & Organizations (AREA)
- Strategic Management (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- General Business, Economics & Management (AREA)
- Quality & Reliability (AREA)
- Tourism & Hospitality (AREA)
- Operations Research (AREA)
- Marketing (AREA)
- Entrepreneurship & Innovation (AREA)
- Development Economics (AREA)
- Computational Linguistics (AREA)
- Artificial Intelligence (AREA)
- Game Theory and Decision Science (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明公开了一种基于局部搜索增强的大领域搜索算法的车辆路径优化方法。方法包括:在满足车辆配送路径最短条件下,根据CVRP标准数据集进行初步构造车辆路径的初始解并获得初始总距离;使用局部搜索增强的自适应大领域搜索算法进行迭代处理,直至输出车辆路径的最优解或达到最大迭代次数,实现车辆路径的优化。本发明方法通过节点间的距离和角度构造高质量的初始解,质量显著提高。本发明使用高效的移除算子和插入算子,使用自适应机制更新算子权重,保证算法的有效收敛;使用丰富的局部搜索算子,增强了局部搜索能力,在解陷入局部最优时,使用变异算子提高了算法跳出局部最优的能力;算法收敛速度快,求解质量高,求得的结果具有较好的稳定性。
Description
技术领域
本发明涉及了一种车辆路径优化方法,具体涉及一种基于局部搜索增强的大领域搜索算法的车辆路径优化方法。
背景技术
车辆路径问题是运筹学和组合优化研究领域的热点问题。车辆路径问题可以概述为:在满足一定的约束条件(如车辆容量限制、行驶里程限制、时间限制等)下,对一系列发货点和收货点,合理分配车辆并组织适当的行车路线,使车辆有序地通过它们,达到一定的目标(如路程最短、费用最小、时间最少、使用车辆最少等)。车辆路径优化对节约社会的物流运输成本,推动物流运输业发展具有重要的现实意义。车辆路径问题是NP-hard问题,由于其应用的广泛性和经济上的重要价值,一经提出,就受到各领域学者的广泛关注,对车辆路径问题进行研究和拓展。派生了许多不同的衍生问题,例如带时间窗的车辆路径问题、同时取送货的车辆路径问题、两级车辆路径问题等。求解车辆路径问题的算法主要归结为两类:精确算法和启发式算法。精确算法主要有:分枝定界法、混合整数规划、动态规划算法等,启发式算法主要有:模拟退火算法、蚁群算法、遗传算法、领域搜索算法等。
由于车辆路径问题的复杂性,精确算法在求解较大规模问题时非常耗费算力和计算时间,因此常用启发式算法来求解大规模车辆路径问题。启发式算法较精确算法求解速度更快,但容易陷入局部最优。
发明内容
为了解决背景技术中存在的问题,针对目前算法存在收敛速度慢、易陷入局部最优等问题,本发明所提供一种基于局部搜索增强的大领域搜索算法的车辆路径优化方法。通过自适应机制高效选择操作算子,加快算法收敛速度,并结合丰富的局部搜索算子,增强算法局部搜索能力,能快速获得优的车辆路径方案。
本发明采用的技术方案是:
本发明的基于局部搜索增强的大领域搜索算法的车辆路径优化方法包括如下步骤:
步骤1、在满足车辆配送路径最短条件下,根据容量限制车辆路径问题CVRP标准数据集进行初步构造较优的车辆路径的初始解S并获得其初始总距离dist_S;CVRP标准数据集中包括若干节点的坐标值、需求量、序号和类型等。
步骤2、根据车辆路径的初始解S及其初始总距离dist_S,使用局部搜索增强的自适应大领域搜索算法进行迭代处理,直至满足车辆配送路径最短的条件或者达到最大迭代次数,输出车辆路径的最优解Sbest,实现车辆配送路径的优化。
有容量车辆路径问题可以描述为以下形式:图G=(V,E)代表一个无向图,其中V={0,1,…,n}代表n+1个节点的集合,E={(i,j)|i,j∈V,i≠j}表示弧的集合。节点0和集合Vc={i=1,…,n}分别表示仓库和需要配送的客户点,每一条弧(i,j)均和节点间距离dij相关联。每一个客户点i∈Vc有一个非负的需求qi,并且仓库的需求为0,客户需求在后续的配送服务中必须得到满足。为了满足客户的需求,车队由m辆相同的车辆组成,每辆车最大载重量为Q。每一个客户的需求都小于车辆的载重量,即,qi≤Q,i∈Vc。有容量车辆路径问题要解决的是一个等待配送服务的客户集合Vc,Vc中的客户点均有且仅有一辆配送车辆向其提供服务。车队中的车辆从仓库出发,经过一系列服务后,最终回到仓库。
所述的步骤1中,车辆配送路径最短的条件具体如下:
其中,K和L分别表示车辆的总数和节点的总数,各个节点中序号为0的节点的类型为仓库,其余的节点的类型为目标配送节点;dij表示各个节点中的第i个节点和第j个节点之间的欧几里得距离或真实路径距离,i≠j;xijk表示二元决策变量,当第k个车辆从第i个节点配送至第j个节点时,则xijk=1,当第k个车辆不从第i个节点配送至第j个节点时,则xijk=0;qi表示第i个节点的需求量,q0=0;yik表示二元决策变量,当第i个目标配送节点由第k个车辆配送时,则yik=1,当第i个目标配送节点不由第k个车辆配送时,则yik=0;Qk表示第k个车辆的载重量,实际各个车辆的载重量相同;V表示L个节点的集合;xjik表示二元决策变量,当第k个车辆从第j个节点配送至第i个节点时,则xjik=1,当第k个车辆不从第j个节点配送至第i个节点时,则xjik=0;Vc表示L-1个目标配送节点的集合。
约束条件能够保证每辆车的载重量不能超过最大载重量,保证每个客户点都被服务,保证每个客户有且仅有一辆车服务,保证节点进出流平衡,进入车辆的数量等于离开车辆的数量。
所述的步骤1中,根据容量限制车辆路径问题CVRP标准数据集进行初步构造获得若干较优的车辆路径的初始解S并获得初始总距离dist_S,具体为首先以仓库为原点,以正东方向为x轴正方向,以正北方向为y轴正方向建立坐标系,获得各个节点间的距离矩阵Dij,距离矩阵Dij中包括每两个节点间的欧几里得距离或真实路径距离;根据反三角函数获得各个节点之间的角度矩阵Ai,角度矩阵Ai中包括每两个节点间的角度;根据距离矩阵Dij以及角度矩阵Ai构造获得若干较优的车辆路径的初始解S,并根据各个车辆路径的初始解S获得初始总距离dist_S。
所述的根据距离矩阵Dij以及角度矩阵Ai构造获得若干较优的车辆路径的初始解S,具体为首先进行相似度选取,选取一个离仓库最近的目标配送节点作为第一条车辆路径的第一个目标配送节点,将第一个目标配送节点作为标准点,计算标准点与其它各个目标配送节点间的相似度,选取相似度最小的一个目标配送节点插入标准点之后,将选取的相似度最小的一个目标配送节点作为标准点并重复相似度选取中的标准点的相同的步骤,直至当前选取出一个目标配送节点后,各个选取出的目标配送节点的需求量大于车辆的载重量,将当前选取出的一个目标配送节点作为下一条车辆路径的第一个目标配送节点,重复相似度选取中的第一条车辆路径的相同的步骤,直至各个目标配送节点均被选取完成,获得若干条车辆路径的初始解S,各条车辆路径的初始解S的距离之和为初始总距离dist_S。
所述的相似度具体如下:
Fij=αaij+βdij
其中,Fij表示第i个目标配送节点和第j个个目标配送节点之间的相似度;α和β分别表示第一和第二权重系数;aij表示第i个目标配送节点和第j个个目标配送节点之间的角度,包含在角度矩阵Ai中;dij表示各个节点中的第i个节点和第j个节点之间的欧几里得距离或真实路径距离,i≠j,包含在离矩阵Dij中。
所述的步骤2中,根据车辆路径的初始解S及其初始总距离dist_S,使用局部搜索增强的自适应大领域搜索算法进行迭代处理,具体如下:
设定局部搜索增强的自适应大领域搜索算法最大迭代次数Gmax,四类破坏算子和四类修复算子初始权重分值为10、设定八类局部搜索算子初始权重为10,解的接受准则使用模拟退火接受,初始温度T0=1000,退火速率alpha=0.95。
算法迭代开始时,步骤2.1和步骤2.2中每个移除算子的选择概率是1/4,每个插入算子的选择概率是1/4,此时各个算子选择概率相同;为防止迭代后期各算子选择概率差异过大,先将各算子权重分值开根号,再用轮盘赌选择。
步骤2.1、进入迭代循环,首先采用轮盘赌选择一种本次迭代采用的移除算子和插入算子,从而获得当前迭代的车辆路径的最终新解S”,计算当前迭代的车辆路径的最终新解S”的总距离dist_S”,当初始解S的总距离dist_S小于等于最终新解S”的总距离dist_S”时,继续进行步骤2.2,否则继续进行步骤2.5。
步骤2.2、使用模拟退火接受准则接受车辆路径的最终新解S”,当当前迭代最终新解S”比上一次的解更优,则接收当前迭代最终新解S”,令分值grade=1,当当前迭代最终新解S”比上一次的解更差,则令分值grade=0;更新当前迭代选择的移除算子和插入算子的权重分值,使得当前迭代选择的移除算子和插入算子的权重分值分别为各自上一次的权重分值加上分值grade,然后重复步骤2.1-2.2,直至接收当前迭代的最终新解S”。
模拟退火接受准则p具体如下:
其中,Δd表示新解的总距离减去原解的总距离,Tk表示当前模拟退火温度。
模拟退火温度更新如下:
其中,Tk表示当前模拟退火温度,T0表示初始温度;alpha表示退火速率;iter表示当前迭代次数。
步骤2.3、当分值grade=1时,对当前迭代的最终新解S”使用局部搜索算子进行N轮局部搜索,获得更新解Snew,并计算获得更新解Snew的总距离;
步骤2.4、判断更新解Snew的总距离是否满足车辆配送路径最短的条件或迭代次数G是否达到最大迭代次数Gmax,若更新解Snew的总距离满足车辆配送路径最短的条件或达到最大迭代次数Gmax,则输出更新解Snew及其总距离,将更新解Snew作为最优解Sbest,完成车辆路径的优化;否则重复步骤2.1-2.3,直至输出最优解Sbest或迭代次数G达到最大迭代次数Gmax,停止迭代,完成车辆路径的优化。
步骤2.5、当连续迭代m代时获得的上一次迭代的总距离大于当前迭代的最终新解的总距离,则对当前迭代获得的最终新解使用变异算子后获得更新解Snew,有助于解跳出局部最优,并计算获得更新解Snew的总距离,继续进行步骤2.4,完成车辆路径的优化。
所述的步骤2.1中,进入迭代循环,首先采用轮盘赌选择一种本次迭代采用的移除算子,在车辆路径的初始解S中移除N个目标配送点,N为在[0.1*L,0.25*L]的数值范围里内随机选取后再向下取整,从而获得当前迭代的车辆路径的中间新解S’,同时将移除的N个目标配送点放入选择池中。
采用轮盘赌选择一种本次迭代采用的插入算子,将选择池中的目标配送点重新插入当前迭代的车辆路径的中间新解S’中,直至选择池为空,插入完成,从而获得当前迭代的车辆路径的最终新解S”,计算当前迭代的车辆路径的最终新解S”的总距离dist_S”。
所述的步骤2.1中,移除算子包括随机移除算子、最差移除算子、改进的聚类移除算子和随机路线移除算子;改进的聚类移除算子具体为随机选择一个目标配送点将与其之间的角度和距离相近的k个目标配送点移除。
所述的步骤2.2中,插入算子包括贪婪距离插入算子、改进的贪婪插入算子、Regret-2和Regret-3插入算子;改进的贪婪插入算子具体为依次将需要插入的目标配送点循环放入当前迭代的车辆路径中的所有位置点,记录使适应度增加最少的位置,适应度由距离和角度确认,将适应度增加最少的目标配送点插入最优位置点处。
所述的步骤2.3中,局部搜索算子包括Relocate算子、Exchange算子、2opt算子、3opt算子、Swap算子、Shift算子、Cross-exchange算子和改进的GENE算子;改进的GENE算子具体为随机选择当前迭代的最终新解S”中的两条相邻的车辆路径,选择其中一条车辆路径中的一个目标配送节点插入到另一条车辆路径中,且插入位置为距离该目标配送节点最近的两个目标配送节点之间,这两个目标配送节点可以不连续。
所述的步骤2.5中,变异算子包括Or-opt算子、Cross-exchange算子、改进的GENE算子、随机删除和插入算子;使用变异算子时具体为随机选择两种变异算子对当前迭代的最终新解进行扰动,打乱目标配送节点排序和每辆车的目标配送节点分配。
本发明的有益效果是:
1、本发明通过节点间的距离和角度构造了高质量的初始解,相较于随机生成初始解,初始解的质量显著提高,从而提高了算法的收敛速度。
2、本发明根据问题特点,使用了高效的移除算子和插入算子,并使用自适应机制更新算子权重,保证了算法的有效收敛;并且使用丰富的局部搜索算子,增强了局部搜索能力,在解陷入局部最优时,使用变异算子,提高了算法跳出局部最优的能力;从算法表现上来看,算法收敛速度快,求解质量高,求得的结果具有较好的稳定性。
附图说明
图1为本发明方法的流程图。
具体实施方式
下面结合附图及具体实施例对本发明作进一步详细说明。
如图1所示,本发明的基于局部搜索增强的大领域搜索算法的车辆路径优化方法包括如下步骤:
步骤1、在满足车辆配送路径最短条件下,根据容量限制车辆路径问题CVRP标准数据集进行初步构造较优的车辆路径的初始解S并获得其初始总距离dist_S;CVRP标准数据集中包括若干节点的坐标值、需求量、序号和类型等。
有容量车辆路径问题可以描述为以下形式:图G=(V,E)代表一个无向图,其中V={0,1,…,n}代表n+1个节点的集合,E={(i,j)|i,j∈V,i≠j}表示弧的集合。节点0和集合Vc={i=1,…,n}分别表示仓库和需要配送的客户点,每一条弧(i,j)均和节点间距离dij相关联。每一个客户点i∈Vc有一个非负的需求qi,并且仓库的需求为0,客户需求在后续的配送服务中必须得到满足。为了满足客户的需求,车队由m辆相同的车辆组成,每辆车最大载重量为Q。每一个客户的需求都小于车辆的载重量,即,qi≤Q,i∈Vc。有容量车辆路径问题要解决的是一个等待配送服务的客户集合Vc,Vc中的客户点均有且仅有一辆配送车辆向其提供服务。车队中的车辆从仓库出发,经过一系列服务后,最终回到仓库。
步骤1中,车辆配送路径最短的条件具体如下:
其中,K和L分别表示车辆的总数和节点的总数,各个节点中序号为0的节点的类型为仓库,其余的节点的类型为目标配送节点;dij表示各个节点中的第i个节点和第j个节点之间的欧几里得距离或真实路径距离,i≠j;xijk表示二元决策变量,当第k个车辆从第i个节点配送至第j个节点时,则xijk=1,当第k个车辆不从第i个节点配送至第j个节点时,则xijk=0;qi表示第i个节点的需求量,q0=0;yik表示二元决策变量,当第i个目标配送节点由第k个车辆配送时,则yik=1,当第i个目标配送节点不由第k个车辆配送时,则yik=0;Qk表示第k个车辆的载重量,实际各个车辆的载重量相同;V表示L个节点的集合;xjik表示二元决策变量,当第k个车辆从第j个节点配送至第i个节点时,则xjik=1,当第k个车辆不从第j个节点配送至第i个节点时,则xjik=0;Vc表示L-1个目标配送节点的集合。
约束条件能够保证每辆车的载重量不能超过最大载重量,保证每个客户点都被服务,保证每个客户有且仅有一辆车服务,保证节点进出流平衡,进入车辆的数量等于离开车辆的数量。
步骤1中,根据容量限制车辆路径问题CVRP标准数据集进行初步构造获得若干较优的车辆路径的初始解S并获得初始总距离dist_S,具体为首先以仓库为原点,以正东方向为x轴正方向,以正北方向为y轴正方向建立坐标系,获得各个节点间的距离矩阵Dij,距离矩阵Dij中包括每两个节点间的欧几里得距离或真实路径距离;根据反三角函数获得各个节点之间的角度矩阵Ai,角度矩阵Ai中包括每两个节点间的角度;根据距离矩阵Dij以及角度矩阵Ai构造获得若干较优的车辆路径的初始解S,并根据各个车辆路径的初始解S获得初始总距离dist_S。
根据距离矩阵Dij以及角度矩阵Ai构造获得若干较优的车辆路径的初始解S,具体为首先进行相似度选取,选取一个离仓库最近的目标配送节点作为第一条车辆路径的第一个目标配送节点,将第一个目标配送节点作为标准点,计算标准点与其它各个目标配送节点间的相似度,选取相似度最小的一个目标配送节点插入标准点之后,将选取的相似度最小的一个目标配送节点作为标准点并重复相似度选取中的标准点的相同的步骤,直至当前选取出一个目标配送节点后,各个选取出的目标配送节点的需求量大于车辆的载重量,将当前选取出的一个目标配送节点作为下一条车辆路径的第一个目标配送节点,重复相似度选取中的第一条车辆路径的相同的步骤,直至各个目标配送节点均被选取完成,获得若干条车辆路径的初始解S,各条车辆路径的初始解S的距离之和为初始总距离dist_S;
相似度具体如下:
Fij=αaij+βdij
其中,Fij表示第i个目标配送节点和第j个个目标配送节点之间的相似度;α和β分别表示第一和第二权重系数;aij表示第i个目标配送节点和第j个个目标配送节点之间的角度,包含在角度矩阵Ai中;dij表示各个节点中的第i个节点和第j个节点之间的欧几里得距离或真实路径距离,i≠j,包含在离矩阵Dij中。
步骤2、根据车辆路径的初始解S及其初始总距离dist_S,使用局部搜索增强的自适应大领域搜索算法进行迭代处理,直至满足车辆配送路径最短的条件或者达到最大迭代次数,输出车辆路径的最优解Sbest,实现车辆配送路径的优化。
步骤2中,根据车辆路径的初始解S及其初始总距离dist_S,使用局部搜索增强的自适应大领域搜索算法进行迭代处理,具体如下:
设定局部搜索增强的自适应大领域搜索算法最大迭代次数Gmax,四类破坏算子和四类修复算子初始权重分值为10、设定八类局部搜索算子初始权重为10,解的接受准则使用模拟退火接受,初始温度T0=1000,退火速率alpha=0.95。
算法迭代开始时,步骤2.1和步骤2.2中每个移除算子的选择概率是1/4,每个插入算子的选择概率是1/4,此时各个算子选择概率相同;为防止迭代后期各算子选择概率差异过大,先将各算子权重分值开根号,再用轮盘赌选择。
步骤2.1、进入迭代循环,首先采用轮盘赌选择一种本次迭代采用的移除算子和插入算子,从而获得当前迭代的车辆路径的最终新解S”,计算当前迭代的车辆路径的最终新解S”的总距离dist_S”,当初始解S的总距离dist_S小于等于最终新解S”的总距离dist_S”时,继续进行步骤2.2,否则继续进行步骤2.5。
步骤2.1中,进入迭代循环,首先采用轮盘赌选择一种本次迭代采用的移除算子,在车辆路径的初始解S中移除N个目标配送点,N为在[0.1*L,0.25*L]的数值范围里内随机选取后再向下取整,从而获得当前迭代的车辆路径的中间新解S’,同时将移除的N个目标配送点放入选择池中。
采用轮盘赌选择一种本次迭代采用的插入算子,将选择池中的目标配送点重新插入当前迭代的车辆路径的中间新解S’中,直至选择池为空,插入完成,从而获得当前迭代的车辆路径的最终新解S”,计算当前迭代的车辆路径的最终新解S”的总距离dist_S”。
步骤2.1中,移除算子包括随机移除算子、最差移除算子、改进的聚类移除算子和随机路线移除算子;改进的聚类移除算子具体为随机选择一个目标配送点将与其之间的角度和距离相近的k个目标配送点移除。
步骤2.2、使用模拟退火接受准则接受车辆路径的最终新解S”,当当前迭代最终新解S”比上一次的解更优,则接收当前迭代最终新解S”,令分值grade=1,当当前迭代最终新解S”比上一次的解更差,则令分值grade=0;更新当前迭代选择的移除算子和插入算子的权重分值,使得当前迭代选择的移除算子和插入算子的权重分值分别为各自上一次的权重分值加上分值grade,然后重复步骤2.1-2.2,直至接收当前迭代的最终新解S”。
模拟退火接受准则p具体如下:
其中,Δd表示新解的总距离减去原解的总距离,Tk表示当前模拟退火温度。
模拟退火温度更新如下:
其中,Tk表示当前模拟退火温度,T0表示初始温度;alpha表示退火速率;iter表示当前迭代次数。
步骤2.2中,插入算子包括贪婪距离插入算子、改进的贪婪插入算子、Regret-2和Regret-3插入算子;改进的贪婪插入算子具体为依次将需要插入的目标配送点循环放入当前迭代的车辆路径中的所有位置点,记录使适应度增加最少的位置,适应度由距离和角度确认,将适应度增加最少的目标配送点插入最优位置点处。
步骤2.3、当分值grade=1时,对当前迭代的最终新解S”使用局部搜索算子进行N轮局部搜索,获得更新解Snew,并计算获得更新解Snew的总距离。
步骤2.3中,局部搜索算子包括Relocate算子、Exchange算子、2opt算子、3opt算子、Swap算子、Shift算子、Cross-exchange算子和改进的GENE算子;改进的GENE算子具体为随机选择当前迭代的最终新解S”中的两条相邻的车辆路径,选择其中一条车辆路径中的一个目标配送节点插入到另一条车辆路径中,且插入位置为距离该目标配送节点最近的两个目标配送节点之间,这两个目标配送节点可以不连续。
步骤2.4、判断更新解Snew的总距离是否满足车辆配送路径最短的条件或迭代次数G是否达到最大迭代次数Gmax,若更新解Snew的总距离满足车辆配送路径最短的条件或达到最大迭代次数Gmax,则输出更新解Snew及其总距离,将更新解Snew作为最优解Sbest,完成车辆路径的优化;否则重复步骤2.1-2.3,直至输出最优解Sbest或迭代次数G达到最大迭代次数Gmax,停止迭代,完成车辆路径的优化;
步骤2.5、当连续迭代m代时获得的上一次迭代的总距离大于当前迭代的最终新解的总距离,则对当前迭代获得的最终新解使用变异算子后获得更新解Snew,有助于解跳出局部最优,并计算获得更新解Snew的总距离,继续进行步骤2.4,完成车辆路径的优化。
步骤2.5中,变异算子包括Or-opt算子、Cross-exchange算子、改进的GENE算子、随机删除和插入算子;使用变异算子时具体为随机选择两种变异算子对当前迭代的最终新解进行扰动,打乱目标配送节点排序和每辆车的目标配送节点分配。
步骤2中需要进行算法参数设置:设定局部搜索增强的自适应大领域搜索算法最大迭代次数Gmax,四类破坏算子和四类修复算子初始权重分值为10、设定八类局部搜索算子初始权重为10,解的接受准则使用模拟退火接受,初始温度T0=1000,退火速率alpha=0.95,具体实验中使用的参数如表1所示。
表1
步骤2.1中,移除算子包括随机移除算子、最差移除算子、改进的聚类移除算子和随机路线移除算子;步骤2.2中,插入算子包括贪婪距离插入算子、改进的贪婪插入算子、Regret-2和Regret-3插入算子,具体如下表2所示。
表2
步骤2.3中,局部搜索算子包括Relocate算子、Exchange算子、2opt算子、3opt算子、Swap算子、Shift算子、Cross-exchange算子和改进的GENE算子,具体如下表3所示。
表3
步骤2.5中,变异算子包括Or-opt算子、Cross-exchange算子、改进的GENE算子、随机删除和插入算子;具体如下表4所示。
表4
本发明在有容量车辆路径问题上算法具有较强的搜索能力和稳定性,除了可以用于求解车辆路径问题,还可以通过改变底层算子的设计应用于其他的组合优化问题。补充说明,以上实施例仅用于说明本发明的技术方案,并非对其限制。本领域的技术人员应当理解本发明的技术特征,可对前述技术方案进行修改,或者等同替换其中的部分技术特征,但不能使其技术方案的本质脱离本发明的实施例技术方案的精神和范围。
Claims (10)
1.一种基于局部搜索增强的大领域搜索算法的车辆路径优化方法,其特征在于:方法包括如下步骤:
步骤1、在满足车辆配送路径最短条件下,根据容量限制车辆路径问题CVRP标准数据集进行初步构造车辆路径的初始解S并获得其初始总距离dist_S;
步骤2、根据车辆路径的初始解S及其初始总距离dist_S,使用局部搜索增
强的自适应大领域搜索算法进行迭代处理,直至满足车辆配送路径最短的条件或者达到最大迭代次数,输出车辆路径的最优解Sbest,实现车辆配送路径的优化。
2.根据权利要求1所述的一种基于局部搜索增强的大领域搜索算法的车辆路径优化方法,其特征在于:所述的步骤1中,车辆配送路径最短的条件具体如下:
其中,K和L分别表示车辆的总数和节点的总数,各个节点中序号为0的节点的类型为仓库,其余的节点的类型为目标配送节点;dij表示各个节点中的第i个节点和第j个节点之间的欧几里得距离或真实路径距离,i≠j;xijk表示二元决策变量,当第k个车辆从第i个节点配送至第j个节点时,则xijk=1,当第k个车辆不从第i个节点配送至第j个节点时,则xijk=0;qi表示第i个节点的需求量,q0=0;yik表示二元决策变量,当第i个目标配送节点由第k个车辆配送时,则yik=1,当第i个目标配送节点不由第k个车辆配送时,则yik=0;Qk表示第k个车辆的载重量;V表示L个节点的集合;xjik表示二元决策变量,当第k个车辆从第j个节点配送至第i个节点时,则xjik=1,当第k个车辆不从第j个节点配送至第i个节点时,则xjik=0;Vc表示L-1个目标配送节点的集合。
3.根据权利要求1所述的一种基于局部搜索增强的大领域搜索算法的车辆路径优化方法,其特征在于:所述的步骤1中,根据容量限制车辆路径问题CVRP标准数据集进行初步构造获得若干车辆路径的初始解S并获得初始总距离dist_S,具体为首先以仓库为原点,以正东方向为x轴正方向,以正北方向为y轴正方向建立坐标系,获得各个节点间的距离矩阵Dij,距离矩阵Dij中包括每两个节点间的欧几里得距离或真实路径距离;根据反三角函数获得各个节点之间的角度矩阵Ai,角度矩阵Ai中包括每两个节点间的角度;根据距离矩阵Dij以及角度矩阵Ai构造获得若干车辆路径的初始解S,并根据各个车辆路径的初始解S获得初始总距离dist_S。
4.根据权利要求3所述的一种基于局部搜索增强的大领域搜索算法的车辆路径优化方法,其特征在于:所述的根据距离矩阵Dij以及角度矩阵Ai构造获得若干车辆路径的初始解S,具体为首先进行相似度选取,选取一个离仓库最近的目标配送节点作为第一条车辆路径的第一个目标配送节点,将第一个目标配送节点作为标准点,计算标准点与其它各个目标配送节点间的相似度,选取相似度最小的一个目标配送节点插入标准点之后,将选取的相似度最小的一个目标配送节点作为标准点并重复相似度选取中的标准点的相同的步骤,直至当前选取出一个目标配送节点后,各个选取出的目标配送节点的需求量大于车辆的载重量,将当前选取出的一个目标配送节点作为下一条车辆路径的第一个目标配送节点,重复相似度选取中的第一条车辆路径的相同的步骤,直至各个目标配送节点均被选取完成,获得若干条车辆路径的初始解S,各条车辆路径的初始解S的距离之和为初始总距离dist_S;
所述的相似度具体如下:
Fij=α·aij+β·dij
其中,Fij表示第i个目标配送节点和第j个个目标配送节点之间的相似度;α和β分别表示第一和第二权重系数;aij表示第i个目标配送节点和第j个个目标配送节点之间的角度,包含在角度矩阵Ai中;dij表示各个节点中的第i个节点和第j个节点之间的欧几里得距离或真实路径距离,i≠j,包含在离矩阵Dij中。
5.根据权利要求1所述的一种基于局部搜索增强的大领域搜索算法的车辆路径优化方法,其特征在于:所述的步骤2中,根据车辆路径的初始解S及其初始总距离dist_S,使用局部搜索增强的自适应大领域搜索算法进行迭代处理,具体如下:
步骤2.1、进入迭代循环,首先采用轮盘赌选择一种本次迭代采用的移除算子和插入算子,从而获得当前迭代的车辆路径的最终新解S”,计算当前迭代的车辆路径的最终新解S”的总距离dist_S”,当初始解S的总距离dist_S小于等于最终新解S”的总距离dist_S”时,继续进行步骤2.2,否则继续进行步骤2.5;
步骤2.2、使用模拟退火接受准则接受车辆路径的最终新解S”,当当前迭代最终新解S”比上一次的解更优,则接收当前迭代最终新解S”,令分值grade=1,当当前迭代最终新解S”比上一次的解更差,则令分值grade=0;更新当前迭代选择的移除算子和插入算子的权重分值,使得当前迭代选择的移除算子和插入算子的权重分值分别为各自上一次的权重分值加上分值grade,然后重复步骤2.1-2.2,直至接收当前迭代的最终新解S”;
步骤2.3、当分值grade=1时,对当前迭代的最终新解S”使用局部搜索算子进行N轮局部搜索,获得更新解Snew,并计算获得更新解Snew的总距离;
步骤2.4、判断更新解Snew的总距离是否满足车辆配送路径最短的条件或迭代次数G是否达到最大迭代次数Gmax,若更新解Snew的总距离满足车辆配送路径最短的条件或达到最大迭代次数Gmax,则输出更新解Snew及其总距离,将更新解Snew作为最优解Sbest,完成车辆路径的优化;否则重复步骤2.1-2.3,直至输出最优解Sbest或迭代次数G达到最大迭代次数Gmax,停止迭代,完成车辆路径的优化;
步骤2.5、当连续迭代m代时获得的上一次迭代的总距离大于当前迭代的最终新解的总距离,则对当前迭代获得的最终新解使用变异算子后获得更新解Snew,并计算获得更新解Snew的总距离,继续进行步骤2.4,完成车辆路径的优化。
6.根据权利要求5所述的一种基于局部搜索增强的大领域搜索算法的车辆路径优化方法,其特征在于:所述的步骤2.1中,进入迭代循环,首先采用轮盘赌选择一种本次迭代采用的移除算子,在车辆路径的初始解S中移除N个目标配送点,N为在[0.1*L,0.25*L]的数值范围里内随机选取后再向下取整,从而获得当前迭代的车辆路径的中间新解S’,同时将移除的N个目标配送点放入选择池中;
采用轮盘赌选择一种本次迭代采用的插入算子,将选择池中的目标配送点重新插入当前迭代的车辆路径的中间新解S’中,直至选择池为空,插入完成,从而获得当前迭代的车辆路径的最终新解S”,计算当前迭代的车辆路径的最终新解S”的总距离dist_S”。
7.根据权利要求5所述的一种基于局部搜索增强的大领域搜索算法的车辆路径优化方法,其特征在于:所述的步骤2.1中,移除算子包括随机移除算子、最差移除算子、改进的聚类移除算子和随机路线移除算子;改进的聚类移除算子具体为随机选择一个目标配送点将与其之间的角度和距离相近的k个目标配送点移除。
8.根据权利要求5所述的一种基于局部搜索增强的大领域搜索算法的车辆路径优化方法,其特征在于:所述的步骤2.2中,插入算子包括贪婪距离插入算子、改进的贪婪插入算子、Regret-2和Regret-3插入算子;改进的贪婪插入算子具体为依次将需要插入的目标配送点循环放入当前迭代的车辆路径中的所有位置点,将适应度增加最少的目标配送点插入最优位置点处。
9.根据权利要求4所述的一种基于局部搜索增强的大领域搜索算法的车辆路径优化方法,其特征在于:所述的步骤2.3中,局部搜索算子包括Relocate算子、Exchange算子、2opt算子、3opt算子、Swap算子、Shift算子、Cross-exchange算子和改进的GENE算子;改进的GENE算子具体为随机选择当前迭代的最终新解S”中的两条相邻的车辆路径,选择其中一条车辆路径中的一个目标配送节点插入到另一条车辆路径中,且插入位置为距离该目标配送节点最近的两个目标配送节点之间。
10.根据权利要求4所述的一种基于局部搜索增强的大领域搜索算法的车辆路径优化方法,其特征在于:所述的步骤2.5中,变异算子包括Or-opt算子、Cross-exchange算子、改进的GENE算子、随机删除和插入算子;使用变异算子时具体为随机选择两种变异算子对当前迭代的最终新解进行扰动。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310765823.2A CN116957436A (zh) | 2023-06-27 | 2023-06-27 | 基于局部搜索增强的大领域搜索算法的车辆路径优化方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310765823.2A CN116957436A (zh) | 2023-06-27 | 2023-06-27 | 基于局部搜索增强的大领域搜索算法的车辆路径优化方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116957436A true CN116957436A (zh) | 2023-10-27 |
Family
ID=88443615
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310765823.2A Pending CN116957436A (zh) | 2023-06-27 | 2023-06-27 | 基于局部搜索增强的大领域搜索算法的车辆路径优化方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116957436A (zh) |
-
2023
- 2023-06-27 CN CN202310765823.2A patent/CN116957436A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109919376B (zh) | 多车场与多车型车辆路径调度控制方法 | |
CN109800910B (zh) | 一种基于禁忌搜索的超启发式算法的车辆路径优化方法 | |
CN112561194B (zh) | 一种混合流水车间生产与物流集成调度方法及系统 | |
CN109583650A (zh) | 一种电动车换电站选址和物流配送联合调度的方法 | |
CN107909228B (zh) | 基于模因计算的动态车辆收发货路径规划方法及装置 | |
CN108921472A (zh) | 一种多车型的两阶段车货匹配方法 | |
US20220292413A1 (en) | Bike sharing rebalancing optimization method based on adaptive neighborhood search algorithm | |
CN113313285B (zh) | 多约束条件的车辆路径优化方法、系统、存储介质及设备 | |
CN109559062A (zh) | 一种合作式物流问题的任务分配与路径规划方法 | |
CN112488386B (zh) | 基于分布熵多目标粒子群的物流车辆配送规划方法及系统 | |
CN111311158A (zh) | 一种有限充电设施条件下的电动物流车路径规划方法 | |
CN113052537B (zh) | 一种基于启发式粒子群算法的物流车辆低碳路线规划方法 | |
CN113570112B (zh) | 求解考虑合作的带时间窗的车辆路径问题的优化算法 | |
CN112801347B (zh) | 基于移动中转站及众包的多目标城市两级配送规划方法 | |
CN113627712A (zh) | 一种仓储系统穿梭车作业顺序优化方法 | |
CN114444843A (zh) | 一种基于大规模变邻域搜索策略的农产品绿色物流配送车辆调度方法及系统 | |
CN117075545A (zh) | 一种多目标柔性作业车间调度方法、电子设备、介质 | |
CN116151497A (zh) | 一种带有取送货的多隔间车辆路径规划方法及系统 | |
CN113867358A (zh) | 多无人车协同遍历任务的智能路径规划方法 | |
CN115730789A (zh) | 分类存储下的asrs任务调度与货位分配方法及系统 | |
CN111340303A (zh) | 基于新型混合蛙跳算法的旅行商路线规划方法 | |
CN116957436A (zh) | 基于局部搜索增强的大领域搜索算法的车辆路径优化方法 | |
Qiao et al. | Factors affecting the final solution of the bike-sharing rebalancing problem under heuristic algorithms | |
CN116362435A (zh) | 一种用于多车场配送的路径规划方法 | |
CN116341860A (zh) | 一种基于改进nsga-ⅱ算法的车辆调度优化方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |