CN117172394B - 一种基于覆盖旅行商问题求解的急救队路径规划方法 - Google Patents
一种基于覆盖旅行商问题求解的急救队路径规划方法 Download PDFInfo
- Publication number
- CN117172394B CN117172394B CN202310967878.1A CN202310967878A CN117172394B CN 117172394 B CN117172394 B CN 117172394B CN 202310967878 A CN202310967878 A CN 202310967878A CN 117172394 B CN117172394 B CN 117172394B
- Authority
- CN
- China
- Prior art keywords
- vertex
- vertexes
- accessed
- coordinates
- coverage
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 88
- 238000013439 planning Methods 0.000 title claims abstract description 27
- 238000009826 distribution Methods 0.000 claims abstract description 10
- 230000002787 reinforcement Effects 0.000 claims abstract description 10
- 238000012549 training Methods 0.000 claims description 28
- 239000013598 vector Substances 0.000 claims description 14
- 230000008569 process Effects 0.000 claims description 13
- 239000011159 matrix material Substances 0.000 claims description 9
- 238000007781 pre-processing Methods 0.000 claims description 8
- 238000005070 sampling Methods 0.000 claims description 8
- 238000004364 calculation method Methods 0.000 claims description 7
- 238000010606 normalization Methods 0.000 claims description 7
- 230000006870 function Effects 0.000 claims description 6
- 238000000605 extraction Methods 0.000 claims description 5
- 230000007246 mechanism Effects 0.000 claims description 5
- 238000010276 construction Methods 0.000 claims description 4
- 238000003860 storage Methods 0.000 claims description 3
- 238000006467 substitution reaction Methods 0.000 claims description 3
- 230000008901 benefit Effects 0.000 abstract description 9
- 238000005457 optimization Methods 0.000 abstract description 6
- 238000002474 experimental method Methods 0.000 abstract description 4
- 238000013473 artificial intelligence Methods 0.000 abstract description 2
- 238000012360 testing method Methods 0.000 description 17
- 238000010586 diagram Methods 0.000 description 3
- 238000013459 approach Methods 0.000 description 2
- 238000013528 artificial neural network Methods 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 230000002776 aggregation Effects 0.000 description 1
- 238000004220 aggregation Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000004927 fusion Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 238000010845 search algorithm Methods 0.000 description 1
- 239000013589 supplement Substances 0.000 description 1
- 238000013068 supply chain management Methods 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
- 238000000844 transformation Methods 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
- 238000012384 transportation and delivery Methods 0.000 description 1
- 238000010200 validation analysis Methods 0.000 description 1
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种基于覆盖旅行商问题求解的急救队路径规划方法,属于人工智能的强化学习和组合优化领域。本发明通过设计覆盖注意力模块对顶点间覆盖关系建模,并动态地将顶点被访问的信息传递至覆盖集中的其他顶点,高效地捕获问题特征和时序特征;为了提高模型对于对称不变性的学习并增强构造解的能力,提出了基于实例增强的改进基线用于REINFORCE算法,无需引入额外的评论家网络,并且具备显存占用少,运算速度快的优势。实验结果表明,本发明在求解质量上相较现有DRL方法均有明显优势,在不同覆盖类型、不同数据分布的实验中也展现了极强的泛化能力,部分实例的求解质量甚至超越了传统启发式算法,并保持着数十倍的求解速度优势。
Description
技术领域
本发明涉及一种基于覆盖旅行商问题求解的急救队路径规划方法,属于人工智能的强化学习和组合优化领域。
背景技术
在供应链管理、能源输送、路径规划等诸多现实生活场景中旅行商问题(Traveling Salesman Problem,TSP)有着较为广泛的应用,但受资源限制,该问题模型不能直接地应用到某些现实生活场景中。例如急救队路线规划问题,当地震、洪水等自然灾害发生时,急救队需要对受灾地区进行救助。如果对所有的受灾地点均进行依次访问,会存在较大的人力、物力资源消耗,一个更好的解决方案是对受灾地点进行部分访问,未被访问的地点可由其最近的被访问点提供资源救助,这有助于在最短时间内高效地进行灾害救助。基于此,覆盖旅行商问题(Covering Salesman Problem,CSP)被提出。CSP问题中每个顶点存在一个预先设定的覆盖距离,处于该覆盖距离内的顶点可被覆盖,该问题的求解目标为在给定的顶点集合中的子集构造一条使所有顶点被访问或被覆盖的最短回路。当各个顶点预先设定的覆盖距离均为0时,CSP问题退化为TSP问题。因此,TSP问题可以看作CSP的特例,CSP问题同样具有NP难特征。
由于CSP问题需要考虑顶点间的覆盖约束,因而该问题并不同于TSP问题存在精确算法,这导致对CSP问题的求解存在巨大挑战。现有的CSP求解方法大多是人工设计规则的启发式算法,如Bruce Golden等人提出的LS1、LS2算法(Golden B,Naji-Azimi Z,RaghavanS,et al.The generalized covering salesman problem[J].INFORMS Journal onComputing,2012,24(4):534-553),该方法由专家基于对问题特征的了解设计迭代搜索方案,有着较高的求解质量。但该类方法需要大量的领域知识和不断试错,难以将已获取的求解知识扩展到新的问题实例中。此外,当面对大规模实例时启发式算法的求解时间过长,在实时性要求高的灾害救援场景下无法进行使用。
随着深度神经网络(Deep Neural Network,DNN)的快速发展,使用DNN构造近似求解器求解组合优化问题受到了大量的关注。该类方法通过监督学习、强化学习方法对DNN的参数进行训练,由DNN挖掘问题实例间的内在联系和共性特征,使其在面对同分布下的其他实例时能够利用学习到的信息进行高质量求解。得益于GPU的高效矩阵运算,基于DNN的方法在求解速度明显优于传统的启发式方法。由于监督学习方法需要大量高质量的解作为标签,基于深度强化学习(Deep Reinforcement Learning,DRL)的方法逐渐成为求解组合优化的主流方法。该类方法无需标签仅需要大量的问题实例即可进行训练,并具有较强的泛化能力。因此,利用DRL方法求解CSP问题具有求解时间短、泛化能力强、扩展性高的优势。值得注意的是,当前DRL方法在求解质量上相对启发式算法可能存在一定的差距,但其能够以自动化的手段去节省人力和时间,并成为传统启发式算法的补充或替代。Li等人提出了AM-dynamic算法(LI K,ZHANG T,WANG R等.Deep Reinforcement Learning forCombinatorial Optimization:Covering Salesman Problems[J].IEEE Transactions onCybernetics,2021:1–14.DOI:10.1109/TCYB.2021.3103811.),基于DNN与设计的问题特征来进行CSP问题的求解,在求解速度上存在较大优势,但其本质上仍然是由对CSP问题的经验所执导,无法通过模型去挖掘问题顶点间的覆盖关系,因此该方法的求解质量较低。而方伟等人提出通过修改Mask策略减少模型的决策空间的方法,在面临大规模问题求解时求解质量较高,但在中小规模实例与启发式相比仍存在一定差距,并且解的质量依赖于局部搜索方法(方伟,接中冰,陆恒杨等。一种基于覆盖旅行商问题求解的路径规划方法[P]。中国专利,申请公布号:CN114330867A)。
综上,现有基于DNN求解CSP问题的求解质量仍然有待进一步的提高。
发明内容
为了解决现有DNN方法针对CSP问题求解质量较低导致所规划得到的急救队路线仍然存在进一步缩短的空间的问题,本发明提供了一种基于覆盖旅行商问题求解的急救队路径规划方法,所述技术方案如下:
本发明的第一个目的在于提供一种基于覆盖旅行商问题求解的急救队路径规划方法,包括:
步骤一:获取所要进行覆盖与访问的N个地点坐标;
步骤二:对步骤一获取到的N个地点坐标进行预处理与实例增强操作,得到8组N个地点坐标;
步骤三:对步骤二处理后的地点坐标数据通过CAM模型的编码器进行特征提取,分别获取到8组N个地点坐标的深层信息表示;
步骤四:将所述步骤三的8组深层信息表示输入至CAM模型的解码器中进行顶点预测,每个时刻每组分别构造全局图信息输出顶点访问概率分布,基于贪婪解码、波束搜索解码策略得到当前时刻当前组访问的顶点;
步骤五:对步骤四得到的当前时刻访问的顶点进行覆盖注意力运算,将其深层信息扩散融合至覆盖集内的其他顶点;重复所述步骤四、步骤五,直至输出的访问顶点序列满足可行解约束;
所述覆盖注意力模型(Cover Attention Model,CAM)由编码器和解码器组成,其具体的网络结构如图1所示。
可选的,所述CAM模型使用修改后的Transformer模型的编码器对步骤二中处理后的8组地点坐标进行特征编码,编码过程包括:
给定包含N个顶点的CSP实例,对顶点i的二维平面坐标首先通过线性投影层将其映射为d维向量/>
N个地点的初始嵌入采用矩阵形式表示:
其中,表示受灾地点N的坐标,上标表示编码器的层数,0即表示未进行编码;
所述编码器由L层编码层构成,每层编码层包括多头自注意力层MHA、全连接层FFN、批次归一化层BN和残差连接,对N个顶点的嵌入,通过编码器进行编码的具体公式如下:
其中表示顶点的嵌入/>的矩阵形式,/>表示第l层编码层,/>分别表示第l层的BN层运算,MHA(l)表示第l层的多头自注意力运算,/>分别表示用于构造MHA中的待学习参数;
经过L层的编码后,顶点嵌入hi融合全局信息并指导后续的求解过程。
可选的,所述步骤四包括:
将步骤三得到的顶点嵌入hi输入至解码器中,其中解码器由顶点预测层和覆盖注意力模块两部分构成,所述顶点预测层的作用是基于上下文信息来输出t时刻访问的顶点概率,而所述覆盖注意力模块将t时刻被访问的顶点πt相关信息传播到其所覆盖的其他顶点;
所述顶点预测层的计算过程包括:
首先根据顶点嵌入构造t时刻的上下文,使用如下公式计算全局图嵌入g:
接着构造上下文嵌入:
其中Concat表示向量拼接操作,在t=1时刻,解序列中不存在首尾顶点,因而使用两个待学习的向量vf,vl进行替换;而在t≠1时刻,解序列中{π1,...,πt-1}的首尾顶点为π1和πt-1,将g和对应的嵌入拼接;
然后对c通过MHA聚合所有顶点的信息:
对和所有顶点的顶点嵌入ki做注意力计算得到/>并通过截断值C来调整值域为[-C,C];如果/>表示顶点i已经被访问过,将其对应的/>值置为-∞,以阻止顶点i再次被访问:
最后通过softmax归一化获得顶点的被访问概率:
根据概率pi,采用不同的解码策略选择当前时刻访问的顶点πt,并加入到解序列中,最后更新
其中在t=0时,为全1向量,表示所有顶点均未被访问;
所述覆盖注意力层的计算过程包括:
使用多头自注意力机制做覆盖注意力运算使覆盖集之间的信息融合,通过对t时刻被访问的顶点的覆盖集中的所有顶点做MHA运算,将其被访问的信息传递给其他顶点,其他顶点通过调整各自的顶点嵌入来对πt被访问做出反应:
可选的,所述步骤四中的解码策略包括:贪婪解码策略、随机采样策略和波束搜索策略。
可选的,所述步骤二包括:
采用最大最小标准化来对N个地点坐标进行缩放:
其中,(x′,y′)表示任一地点locationi的坐标,(x,y)表示预处理之后的坐标,i={1,…,N};
max(x′),min(x′)分别表示N个地点坐标在x轴坐标上的最大最小数值,max(y′),min(y′)表示N个地点坐标在y轴坐标上的最大最小数值;
对缩放后预处理后的坐标进行如下公式的实例增强操作:
f(x,y)=(x,y)
f(x,y)=(y,x)
f(x,y)=(1-x,y)
f(x,y)=(1-y,x)
f(x,y)=(x,1-y)
f(x,y)=(y,1-x)
f(x,y)=(1-x,1-y)
f(x,y)=(1-y,1-x)
其中f(x,y)表示对应的变换函数。
可选的,所述方法得到的路径长度length(π)为:
其中,π表示由k个地点所构成的解序列;表示对应的解中所选中的第一个地点,/>
表示对应的解中所选中的第k个地点,k≤N;表示解中的第一个地点与解中第k个地点的距离;
选取路径长度最短的解,作为最终的规划路径。
可选的,所述步骤四中的模型通过带基线的REINFOCE算法优化,基于概率分布和解码策略获取到解序列π后,利用负路径长度作为奖励信号通过强化学习进行训练,训练目标为最小化路径长度,定义损失函数为:
L(θ|s)=Epθ(π|s)[length(π)]
其中,参数θ表示模型的总体参数,通过REINFORCE算法利用策略梯度下降进行更新,将实例增强后的8组解的均值作为基线:
其中,b(s)表示基线。
本发明的第二个目的在于提供一种急救队路径规划方法,采用上述任一项所述的基于覆盖旅行商问题求解的急救队路径规划方法进行救援路径的规划。
本发明的第三个目的在于提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机可执行指令,所述计算机可执行指令被处理器执行时实现上述任一项所述的方法。
本发明有益效果是:
本发明针对现有DRL方法求解CSP的解质量低问题,提出了一个新的端到端DRL模型CAM,在AM模型的基础上,对顶点间的覆盖关系使用自注意力机制进行建模,并动态调整顶点嵌入来获取时序关系。一旦顶点被访问,其周围的可覆盖顶点将接收到该信息并影响全局信息进而指导解序列的构造。
在一种实施方式中,为了改善训练过程,基于实例增强策略提出了新的基线用于REINFORCE算法的策略梯度修正,该基线能够促进模型对于平移不变性的学习。为了进一步提高求解质量,本发明也实现了基于波束搜索的解码方法实现时间和精度的权衡。
在随机生成的实例数据集上训练模型,在测试集和TSPLIB数据集上进行对比实验,与传统的启发式算法和当前先进的DRL算法在求解路径长度、最优间隙(optimalitygap)、求解时间进行对比,本发明展现了更高的求解质量和更快的求解速度,在不同的规模的测试数据集上也展现了更强的泛化性。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明一个实施例中公开的路径规划方法的CAM模型整体结构示意图。
图2为本发明一个实施例中公开的路径规划方法的CAM中编码器的结构示意图。
图3为本发明一个实施例中公开的路径规划方法整体流程图。
图4为本发明一个实施例中公开的路径规划方法CAM与其他深度学习求解CSP问题的方法的训练结果对比图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。
实施例一:
本实施例提供一种基于覆盖旅行商问题求解的急救队路径规划方法,参见图2,包括以下步骤:
步骤一:获取所要进行覆盖与访问的N个地点坐标;
步骤二:对步骤一获取到的N个地点坐标进行预处理与实例增强操作,得到8组N个地点坐标;
步骤三:对步骤二处理后的地点坐标数据通过深层的编码器进行特征提取,分别获取到8组N个地点坐标的深层信息表示;
步骤四:将步骤三的8组深层信息表示输入至解码器中进行顶点预测,每个时刻每组分别构造全局图信息输出顶点访问概率分布,基于贪婪解码、波束搜索解码策略得到当前时刻当前组访问的顶点;
步骤五:对步骤四得到的当前时刻访问的顶点进行覆盖注意力运算,将其深层信息扩散融合至覆盖集内的其他顶点;重复步骤四、步骤五,直至输出的访问顶点序列满足可行解约束。
实施例二:
本实施例提供一种基于覆盖旅行商问题求解的路径规划方法,本实施例以模拟N个受灾地区的急救队路线规划为例进行说明,所述方法包括:
Step 1:针对多个受灾地区的急救队路线规划问题定义覆盖旅行商CSP问题。
定义G=(Node,Edge)表示一个二维空间内的无向完全图,其中Node={1,2,...,N}是含有N个顶点的集合,Edge={(i,j)|i,j∈Node}为边集合。定义E为距离矩阵,Ei,j(1≤i,j≤n)表示边(i,j)的长度,即顶点i与顶点j间的欧氏距离。每个顶点i存在一个预先设定的可覆盖集合Seti,集合内的顶点均可被顶点i覆盖。CSP的求解目标是在顶点集合Node中寻找一个排列的子序列A=(π1,π2,...,πk),(k≤n),使Node中的所有顶点都被访问或被覆盖,且A构成的回路路径最短,即len(π)最小,如公式(1):
针对急救队规划问题,该问题的求解目标则是在给定的N个受灾地区中,寻找到多个要访问的受灾地点,并对其他未访问的受灾地点进行覆盖,同时使得急救队访问所有的受灾地点的路线最短。
急救队的坐标对应CSP问题中的N个顶点坐标,访问的受灾地点对应CSP问题中的最优解中包含的顶点序列,急救队的访问路线距离则对应CSP问题中的所有访问顶点的路径长度。
Step 2:获取训练样本数据,并进行数据预处理及数据增强操作,数据包括Step 1中所提到的N个顶点的位置坐标。
样本数据为N个受灾地区的二维平面坐标。对N个不同受灾地区二维平面坐标,首先进行数据预处理。数据预处理主要采用最大最小标准化来对N个受灾地区的坐标进行缩放:
其中,(x′,y′)表示任一地点locationi的二维平面坐标,(x,y)表示缩放后的坐标,i={1,…,N};
max(x′),min(x′)分别表示N个地点坐标在x轴坐标上的最大最小数值,max(y′),min(y′)表示N个地点坐标在y轴坐标上的最大最小数值;
对缩放后预处理后的坐标进行如下公式的实例增强操作:
f表示对应的变换函数。
通过上述操作,将样本数量扩充为8倍,同时能够为模型提供更多的求解样本,以探索多种可能的解。
Step 3:对Step 2中得到的处理后的数据进行特征提取操作。将每个顶点的二维坐标特征根据设计好的编码器映射为高纬度的向量表示,并得到全局图信息。
使用修改后的Transformer模型的编码器对Step 2中处理后的8组地点坐标进行特征编码;具体的编码结构如图2所示。
以一组地点坐标为例,给定包含N个顶点的CSP实例,对顶点i的二维平面坐标首先通过线性投影层将其映射为d维向量/>
其中,表示待学习的参数矩阵,/>表示偏置。
N个地点的初始嵌入可以采用矩阵形式表示:
其中表示受灾地点1的坐标,上标表示编码器的层数,0即表示未进行编码。
然后通过L层的编码器进行特征抽取,每层编码层包括多头自注意力层(Multi-Head Self-Attention,MHA)、全连接层(Feed-Forward Network,FFN)、BN层和残差连接。具体公式如下:
其中表示顶点的嵌入/>的矩阵形式,/>l∈{1,2,...,L}表示第l层编码层,/>分别表示第l层的BN层运算,/>表示经过第l层编码器中第一个BN层后得到的中间结果。MHA(l)表示第l层的多头自注意力运算,/> 分别表示用于构造MHA中的待学习参数,/>表示经过第l层编码器中MHA层后的结果,H′(l)表示经过第l层编码器中第二个BN层后得到的中间结果。经过L层的编码后,顶点嵌入hi(省略了上标l)将融合全局信息并指导后续的求解过程。
Step 4:基于编码器后的特征信息,输出当前时刻访问的受灾地区顶点:
首先根据顶点嵌入构造t时刻的上下文,使用如下公式计算全局图嵌入g:
接着构造上下文嵌入:
其中Concat表示向量拼接操作,在t=1时刻,解序列中不存在首尾顶点,因而使用两个待学习的向量vf,vl进行替换。而在t≠1时刻,解序列中{π1,...,πt-1}的首尾顶点为π1和πt-1,将g和对应的嵌入拼接。
然后对c通过MHA聚合所有顶点的信息。
其中,表示聚合所有信息后的向量,/>和/>分别表示解码器中MHA的待学习参数。
对和所有顶点的顶点嵌入ki做注意力计算得到/>并通过截断值C来调整值域为[-C,C]。/>表示t时刻顶点i的访问情况,如果/>表示顶点i已经被访问过,将其对应的/>值置为-∞,以阻止顶点i再次被访问。
最后通过softmax归一化获得顶点的被访问概率
根据概率pi,采用不同的解码策略选择当前时刻访问的顶点πt,并加入到解序列中,最后更新
其中在t=0时,为全1向量,表示所有顶点均未被访问。
一旦存在顶点被访问,使用多头自注意力机制来进行覆盖集之间的信息融合,通过对t时刻被访问的顶点的覆盖集中的所有顶点做MHA运算,将其被访问的信息传递给其他顶点,其他顶点通过调整各自的顶点嵌入来对πt被访问做出反应。
其中,hj表示覆盖集内的顶点执行完MHA后的顶点嵌入,和/>表示该MHA的待学习参数,MHAcover表示对覆盖集内的顶点嵌入做MHA运算。
基于不同的解码策略确定当前时刻的访问顶点,本实施例采取了如下三种解码策略:
(1)贪婪解码
贪婪解码的思想是在t时刻选择概率最大的顶点加入到解序列中:
贪婪解码的时间复杂度是O(n)。
(2)随机采样
随机采样的主要思路是根据概率分布进行采样,概率数值高的顶点有更高的机会被加入到解序列中,而概率数值低的顶点同样也会被采样到,被这将鼓励模型进行多样化的学习。在训练阶段,通常会使用该采样策略来增强模型的学习能力。
(3)波束搜索
波束搜索(Beam Search)最早被应用于机器翻译任务中,该方法可以看作一个宽度受限的宽度优先搜索算法。其主要思路是维护一个容量B的队列,在解码过程中,每次最多扩展到B×B个解码路径,然后保留分数最大的前B个路径,在此基础上继续扩展,直至所有路径均解码完成。当B=1时,该方法等价于贪婪解码方法。波束搜索的时间复杂度是O(Bn)。
在本实施例中,将B取值为1000和2500;其中,在训练过程中使用随机采样解码策略促进模型对更多路径的探索与学习,在测试阶段使用贪婪解码策略,并通过波束搜索进一步实现速度与精度的权衡。
重复这一过程,直至获取到的解序列已经能够将所有的顶点进行覆盖和访问;
对于随机采样策略和贪婪解码策略,一组将得到一个解;
对于波束搜索策略一组将得到B个解;
通过下式分别求出8个组中解对应的路径的长度length(π),选取路径长度最短的解,作为最终的规划路径;
其中,π表示由k个地点所构成的解序列;表示对应的解中所选中的第一个地点,/>表示对应的解中所选中的第k个地点,k≤N;/>表示解中的第一个地点与解中第k个地点的距离。
最终针对一个样本,将得到8组解,如果采取贪婪解码和随机采样,每组解数目为1,如果是波束搜索,每组解为B即1000和2500。其中每个解包含了受灾地区的序号,分别通过length计算公式,求出各自的长度,选取路径长度最短的解,作为模型的输出解。
Step 5:针对Step4得到的解,计算路径长度,并使用强化学习算法对Step 3、Step4中所使用的DNN进行参数更新,使得其参数能够在面对新的样本时产生更高精度的解。
针对Step 4得到模型的输出解和概率分布pθ(π|s),以贪婪解码获取解序列π后,基于概率分布和解码策略获取到解序列π后,利用负路径长度作为奖励信号通过强化学习进行训练。训练目标为最小化路径长度,定义损失函数为:
L(θ|s)=Epθ(π|S)[length(π)]
L(θ|s)表示所求解的CSP实例长度的期望。参数θ表示模型的总体参数,通过REINFORCE算法利用策略梯度下降进行更新。REINFORCE算法通常引入一个基线(baseline)减小方差,本实施例提出了基于实例增强的基线应用于REINFOCE算法中:
即对单个问题实例s,将实例增强后的8组解的均值作为基线,这将有助于模型在训练中融合对称不变性,同时对现有实例的求解难度作出更准确的评估。一旦当前模型的求解长度大于该基线,将对该策略进行抑制。
在实验结果方面本申请做了一系列实验来证明本申请方法的优越性。
为了证明所提出方法的有效性,本申请在受灾地区数目为20,50,100的急救队规划路径实例上进行了实验;其中每个受灾地区的二维坐标通过Step 2的数据预处理后,均匀分布在[0,1]×[0,1]范围内。在CSP-20(即受灾地区数量为20,下同)、CSP-50、CSP-100上进行训练,训练数据设置每个受灾地区能够对最近的7个其他受灾地区进行覆盖(即一旦该地区被访问过,周围的7个受灾地区的救助可以由该地区进行,即NC=7)。本申请方法与其他的求解方法进行了对比,包括传统启发式算法LS1和LS2、DNN方法AM-NM、AM和AM-dynamic,以及结合了局部搜索的AM-NM(LS)。本申请方法与DNN的求解CSP方法在收敛速度、训练时间、样本效率和求解质量进行了对比。此外,将训练好的模型,在NC不等于7的测试实例中对泛化性进行了进一步的测试。
CAM与AM和AM-dynamic保持相同的超参数设置,其中隐层单元的维度d为128,编码器层数L为3,截断值常数C设置为10(CSP20的训练实例设置为5)。在训练阶段,每轮总训练实例为640000,每个批次大小设置为256,训练共持续600轮,实际上在200轮后模型基本达到收敛。每轮训练后在10000个实例组成的验证集上对模型进行评估并绘制学习曲线。AM和AM-dynamic训练中所使用的基线为贪婪推出基线,对CAM使用本发明提出的实例增强基线。由于实例增强会导致训练时使用了更多的数据,为了公平比较将CAM每个批次的数量缩小为32,并且所有的对比方法在同一台机器上运行。
本申请所提出的方法在随机生成的1000个CSP实例上进行测试,基于学习的模型均采用贪婪解码、波束搜索构造解。本申请给出了在1000个实例上的急救队路线规划的平均路径长度length、最优间隙以及求解单个实例的时间。最优间隙(optimality gap)的计算方法如下。
其中急救队访问路线的的平均路径长度、最优间隙以及求解单个实例的时间,值越小,表示所提出的方法具有更强的求解能力。
表1展示了CAM与其他方法在测试集上的性能比较:
表1:在顶点数为20、50、100的1000个随机生成CSP实例上的测试结果
表1中第一部分是传统启发式算法LS1和LS2的结果,其在多数数据集中均取得了最优解。
表1中的第二部分给出了基于学习的方法进行端到端求解的结果。AM在随机生成的测试实例的最优间隙均超过了10%,这是由于其未在模型中融入CSP的问题特征,无法获取到顶点间的覆盖关系,因此其求解质量与AM-dynamic、AM-NM和CAM存在较大差距。而CAM与两者对比,在20、50、100顶点的数据集中均取得了更好的结果,这得益于覆盖注意力模块对问题特征的捕捉,证明了该模块所学习的覆盖特征要优于AM-dynamic中人为设计的特征。此外,由于并行计算路径长度的优化,即使CAM在解码器存在较多的计算量但求解速度相较AM、AM-dynamic仍存在优势。在表中的第二部分也给出了对AM-dynamic和CAM采用实例增强的结果。实例增强通过对实例进行多次变换,给予了模型更多的求解次数,对于CAM和AM-dynamic的求解质量均有着明显帮助。但CAM(AUG)在提升后取得了更好的结果,在三个测试集上均取得了更低的最优间隙,分别为-1.05%,0.96%,2.82%,并相对于启发式算法在求解速度有着上百倍提升。特别地,在CSP20实例上,CAM(AUG)的求解质量超过了启发式算法。
表1中的第三部分给出了对CAM使用波束搜索后的测试结果,能够发现波束搜索对求解质量的提升有明显帮助,在CSP50上超越了传统启发式算法取得了最优解,在CSP100上其最优间隙仅为0.38%,相较启发式算法仍然保持着10倍以上的速度优势。
图3中对基于DNN方法的学习曲线进行了展示。可以观察到三种DNN方法都能够成功的收敛,然而在收敛结果上CAM明显优于AM和AM-dynamic,这再次表明CAM通过引入覆盖注意力模块对覆盖关系进行隐式捕捉是有效的。同时也能观察到在CSP100上AM的收敛曲线震荡较为剧烈,而AM和AM-dynamic的学习曲线更加平缓。此外,CAM达到另外两者收敛精度时所需的数据量也更少,在不到20轮的训练就达到了AM-dynamic的收敛效果,也表明CAM有着更高的样本效率。
由于CSP问题中每个顶点存在一个预先设计的覆盖距离,为了进一步探索模型的泛化能力,对与训练数据覆盖范围不同的测试集进行了实验。表2是在每个顶点的覆盖数量NC=7的数据训练得到的模型在NC=9,11,15的实例进行测试。
表2:NC=9,11,15的随机生成CSP实例上的测试结果
从表2中可以观察到CAM表现了比AM-dynamic更强的泛化性,在所有规模的测试实例结果均明显优于AM-dynamic,并且不使用实例增强的CAM实验结果仍优于使用实例增强的AM-dynamic的结果。这再次证明了覆盖注意力模块对覆盖关系建模的有效性。
表3给出了CAM和AM-dynamic在与训练集顶点数目不同的测试实例上的实验结果。其中CAM,CSP20表示在训练数据顶点数目为20的CSP实例得到的模型。
表3:不同顶点间的CSP泛化结果
从表3中可以观察到当测试实例与训练数据顶点数据存在差异时,都将对性能产生影响,但总体来说,CAM表现出了更强的泛化能力。表中面对CSP100、CSP200、CSP300的测试实例时,在CSP100训练得到的模型泛化能力要优于CSP50和CSP20训练的模型,而在小规模测试实例CSP20的结论则相反,在CSP100训练的模型的效果明显劣势于在CSP20的模型。
本发明实施例中的部分步骤,可以利用软件实现,相应的软件程序可以存储在可读取的存储介质中,如光盘或硬盘等。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (6)
1.一种基于覆盖旅行商问题求解的急救队路径规划方法,所述方法包括:
步骤一:获取所要进行覆盖与访问的N个地点坐标;
步骤二:对步骤一获取到的N个地点坐标进行预处理与实例增强操作,得到8组N个地点坐标;
步骤三:对步骤二处理后的地点坐标数据通过CAM模型的编码器进行特征提取,分别获取到8组N个地点坐标的深层信息表示;
步骤四:将所述步骤三得到的8组深层信息表示输入至CAM模型的解码器中进行顶点预测,每个时刻每组分别构造全局图信息输出顶点访问概率分布,基于贪婪解码策略、波束搜索解码策略或随机采样策略得到当前时刻当前组访问的顶点;
步骤五:对步骤四得到的当前时刻访问的顶点进行覆盖注意力运算,将其深层信息扩散融合至覆盖集内的其他顶点;重复所述步骤四、步骤五,直至输出的访问顶点序列满足可行解约束,即急救队按照输出的序列进行访问能够对所有的地点坐标进行访问或覆盖;
所述CAM模型由编码器和解码器组成,
其中编码器使用修改后的Transformer模型编码器,而解码器基于注意力机制进行搭建,每时刻输出当前访问的顶点并将信息扩散至覆盖集外内的其他顶点;
所述CAM模型使用修改后的Transformer模型的编码器对步骤二中处理后的8组地点坐标进行特征编码,编码过程包括:
给定包含N个顶点的CSP实例,对顶点i的二维平面坐标首先通过线性投影层将其映射为d维向量/>
N个地点的初始嵌入采用矩阵形式表示:
其中,表示受灾地点N的坐标,上标表示编码器的层数,0即表示未进行编码;
所述编码器由L层编码层构成,每层编码层包括多头自注意力层MHA、全连接层FFN、批次归一化层BN和残差连接,对N个顶点的嵌入,通过编码器进行编码的具体公式如下:
其中表示顶点的嵌入/>的矩阵形式,/>表示第l层编码层,/>分别表示第l层的BN层运算,MHA(l)表示第l层的多头自注意力运算,/>分别表示用于构造MHA中的待学习参数;
经过L层的编码后,顶点嵌入hi融合全局信息并指导后续的求解过程;
所述步骤四和步骤五包括:
将步骤三得到的顶点嵌入hi输入至解码器中,其中解码器由顶点预测层和覆盖注意力模块两部分构成,所述顶点预测层的作用是基于上下文信息来输出t时刻访问的顶点概率,而所述覆盖注意力模块将t时刻被访问的顶点πt相关信息传播到其所覆盖的其他顶点;
所述顶点预测层的计算过程包括:
首先根据顶点嵌入构造t时刻的上下文,使用如下公式计算全局图嵌入g:
接着构造上下文嵌入:
其中Concat表示向量拼接操作,在t=1时刻,解序列中不存在首尾顶点,因而使用两个待学习的向量vf,vl进行替换;而在t≠1时刻,解序列中{π1,...,πt-1}的首尾顶点为π1和πt-1,将g和对应的嵌入拼接;
然后对c通过MHA聚合所有顶点的信息:
对和所有顶点的顶点嵌入ki做注意力计算得到/>并通过截断值C来调整值域为[-C,C];如果/>表示顶点i已经被访问过,将其对应的/>值置为-∞,以阻止顶点i再次被访问:
最后通过softmax归一化获得顶点的被访问概率:
根据概率pi,采用不同的解码策略选择当前时刻访问的顶点πt,并加入到解序列中,最后更新
其中在t=0时,为全1向量,表示所有顶点均未被访问;
一旦存在顶点被访问,所述覆盖注意力模块的计算过程包括:
使用多头自注意力机制做覆盖注意力运算使覆盖集之间的信息融合,通过对t时刻被访问的顶点的覆盖集中的所有顶点做MHA运算,将其被访问的信息传递给其他顶点,其他顶点通过调整各自的顶点嵌入来对πt被访问做出反应:
其中,hj表示覆盖集内的顶点执行完MHA后的顶点嵌入,和表示MHA的待学习参数,MHAcover表示对覆盖集内的顶点嵌入做MHA运算,
最终针对一个样本,将得到8组解,分别通过length计算公式,求出各自的长度,选取路径长度最短的解,作为模型的输出解。
2.根据权利要求1所述的基于覆盖旅行商问题求解的急救队路径规划方法,其特征在于,所述步骤二包括:
采用最大最小标准化来对N个地点坐标进行缩放:
其中,(x′,y′)表示任一地点locationi的坐标,(x,y)表示预处理之后的坐标,i={1,…,N};
max(x′),min(x′)分别表示N个地点坐标在x轴坐标上的最大最小数值,max(y′),min(y′)表示N个地点坐标在y轴坐标上的最大最小数值;
对缩放后预处理后的坐标进行如下公式的实例增强操作:
f(x,y)=(x,y)
f(x,y)=(y,x)
f(x,y)=(1-x,y)
f(x,y)=(1-y,x)
f(x,y)=(x,1-y)
f(x,y)=(y,1-x)
f(x,y)=(1-x,1-y)
f(x,y)=(1-y,1-x)
其中f(x,y)表示对应的变换函数。
3.根据权利要求1所述的基于覆盖旅行商问题求解的急救队路径规划方法,其特征在于,所述方法得到的路径长度length(π)为:
其中,π表示由k个地点所构成的解序列;表示对应的解中所选中的第一个地点,/>表示对应的解中所选中的第k个地点,k≤N;/>表示解中的第一个地点与解中第k个地点的距离;
选取路径长度最短的解,作为最终的规划路径。
4.根据权利要求1所述的基于覆盖旅行商问题求解的急救队路径规划方法,其特征在于,所述步骤四中的模型通过带基线的REINFOCE算法优化,基于概率分布和解码策略获取到解序列π后,利用负路径长度作为奖励信号通过强化学习进行训练,训练目标为最小化路径长度,定义损失函数为:
L(θ|s)=Epθ(π|s)[length(π)]
其中,参数θ表示模型的总体参数,通过REINFORCE算法利用策略梯度下降进行更新,将实例增强后的8组解的均值作为基线:
其中,b(s)表示基线。
5.一种急救队路径规划方法,其特征在于,所述急救队路径规划方法采用权利要求1-4任一项所述的基于覆盖旅行商问题求解的急救队路径规划方法进行救援路径的规划。
6.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机可执行指令,所述计算机可执行指令被处理器执行时实现根据权利要求1-4中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310967878.1A CN117172394B (zh) | 2023-08-03 | 2023-08-03 | 一种基于覆盖旅行商问题求解的急救队路径规划方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310967878.1A CN117172394B (zh) | 2023-08-03 | 2023-08-03 | 一种基于覆盖旅行商问题求解的急救队路径规划方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN117172394A CN117172394A (zh) | 2023-12-05 |
CN117172394B true CN117172394B (zh) | 2024-05-03 |
Family
ID=88942049
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310967878.1A Active CN117172394B (zh) | 2023-08-03 | 2023-08-03 | 一种基于覆盖旅行商问题求解的急救队路径规划方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117172394B (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113420868A (zh) * | 2021-06-26 | 2021-09-21 | 南京搜文信息技术有限公司 | 一种基于深度强化学习的旅行商问题求解方法及求解系统 |
CN114330867A (zh) * | 2021-12-24 | 2022-04-12 | 江南大学 | 一种基于覆盖旅行商问题求解的路径规划方法 |
CN114386706A (zh) * | 2022-01-17 | 2022-04-22 | 中山大学 | 一种基于深度强化学习的二次旅行商问题求解方法和系统 |
CN116301005A (zh) * | 2023-03-31 | 2023-06-23 | 中国民航大学 | 一种适用于应急救援的无人机搜寻路径规划方法及其系统 |
CN116502779A (zh) * | 2023-04-28 | 2023-07-28 | 桂林电子科技大学 | 基于局部注意力机制的旅行商问题生成式求解方法 |
-
2023
- 2023-08-03 CN CN202310967878.1A patent/CN117172394B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113420868A (zh) * | 2021-06-26 | 2021-09-21 | 南京搜文信息技术有限公司 | 一种基于深度强化学习的旅行商问题求解方法及求解系统 |
CN114330867A (zh) * | 2021-12-24 | 2022-04-12 | 江南大学 | 一种基于覆盖旅行商问题求解的路径规划方法 |
CN114386706A (zh) * | 2022-01-17 | 2022-04-22 | 中山大学 | 一种基于深度强化学习的二次旅行商问题求解方法和系统 |
CN116301005A (zh) * | 2023-03-31 | 2023-06-23 | 中国民航大学 | 一种适用于应急救援的无人机搜寻路径规划方法及其系统 |
CN116502779A (zh) * | 2023-04-28 | 2023-07-28 | 桂林电子科技大学 | 基于局部注意力机制的旅行商问题生成式求解方法 |
Also Published As
Publication number | Publication date |
---|---|
CN117172394A (zh) | 2023-12-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Wang et al. | Deep reinforcement learning for transportation network combinatorial optimization: A survey | |
Lai et al. | Policy-gnn: Aggregation optimization for graph neural networks | |
Fu et al. | Generalize a small pre-trained model to arbitrarily large tsp instances | |
Dib et al. | An advanced GA–VNS combination for multicriteria route planning in public transit networks | |
Li et al. | An overview and experimental study of learning-based optimization algorithms for the vehicle routing problem | |
Liang et al. | Applying genetic algorithm and ant colony optimization algorithm into marine investigation path planning model | |
Tsakirakis et al. | A similarity hybrid harmony search algorithm for the team orienteering problem | |
Zhang et al. | Artificial intelligence and its applications | |
Wang et al. | Ant colony optimization with an improved pheromone model for solving MTSP with capacity and time window constraint | |
CN114330867A (zh) | 一种基于覆盖旅行商问题求解的路径规划方法 | |
CN115661550B (zh) | 基于生成对抗网络的图数据类别不平衡分类方法及装置 | |
Wang et al. | Modeling and planning multimodal transport paths for risk and energy efficiency using and/or graphs and discrete ant colony optimization | |
Wen et al. | Graph2route: A dynamic spatial-temporal graph neural network for pick-up and delivery route prediction | |
Jiau et al. | Services-oriented computing using the compact genetic algorithm for solving the carpool services problem | |
Yuan et al. | Solving job shop scheduling problems via deep reinforcement learning | |
Zhang et al. | Transformer-based reinforcement learning for pickup and delivery problems with late penalties | |
Ma et al. | Learning to search feasible and infeasible regions of routing problems with flexible neural k-opt | |
CN114418213A (zh) | 一种基于深度强化学习的城市电动车辆调度方法和系统 | |
CN117172394B (zh) | 一种基于覆盖旅行商问题求解的急救队路径规划方法 | |
Liu et al. | Multi-task learning for routing problem with cross-problem zero-shot generalization | |
Dib et al. | Computing multicriteria shortest paths in stochastic multimodal networks using a memetic algorithm | |
Zhang et al. | Universal value iteration networks: When spatially-invariant is not universal | |
Pop et al. | A new efficient transformation of the generalized vehicle routing problem into the classical vehicle routing problem | |
Liu et al. | A constrained multi-objective evolutionary algorithm with Pareto estimation via neural network | |
CN110569976A (zh) | 一种类脑人工智能决策系统和决策方法 |
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 | ||
CB02 | Change of applicant information | ||
CB02 | Change of applicant information |
Country or region after: China Address after: No. 1800 road 214122 Jiangsu Lihu Binhu District City of Wuxi Province Applicant after: Jiangnan University Address before: No. 1-2202-8, Financial 8th Street, Wuxi Economic Development Zone, Jiangsu Province, 214000 Applicant before: Jiangnan University Country or region before: China |
|
GR01 | Patent grant | ||
GR01 | Patent grant |