An Efficient Graph Convolutional Network Technique for the Travelling Salesman Problem

摘要

本文介绍了一种新的基于学习的方法,用于近似求解二维欧几里得图上的旅行商问题。 我们使用深度图卷积网络通过高度并行的波束搜索以非自回归的方式构建有效的TSP图表示并输出行程。 对于固定图形大小的问题实例,我们的方法1在解决方案质量,推理速度和样本效率方面优于最近提出的所有自回归深度学习技术。 特别是,我们将50个节点的平均最优差距从0.52%降低到0.01%,并将100个节点的平均最优差距从2.26%降低到1.39%。 最后,尽管改进了TSP的其他基于学习的方法,但我们的方法仍未达到标准的运筹学求解器。

引言

NP-hard组合优化问题是整数约束优化问题的一族,这些问题难以大规模解决。 针对流行的NP难题的鲁棒逼近算法具有各种实际应用,并且是运输,供应链,能源,金融和调度等现代行业的骨干。
NP难题是最著名的NP问题之一,即旅行推销员问题(TSP),它提出以下问题:“给出一个城市列表以及每对城市之间的距离,访问每个城市并返回的最短路线是什么 到一张原始图?”从形式上说,人们需要搜索排列的空间,以找到最优的节点序列,称为游览,并且具有最小的总边沿权重(游览长度)。通常,NP难题可以 由于它们具有高度结构化的性质,因此可以作为图上的顺序决策任务制定出来,因此,机器学习可以用来训练近似解决这些问题的策略,而不必手工制定解决方案,因为解决方案可能很昂贵或需要大量专业知识[Bengio等。 ,2018]。
特别是图神经网络技术的最新进展[Bruna等,2013; Defferrard等,2016; Sukhbaatar等,2016; Kipf and Welling,2016; Hamilton等,2017]非常适合 这项任务是因为它们自然地对这些问题的图结构进行操作。
最近提出的用于2D Euclidean TSP的深度学习方法结合了图神经网络和自回归解码,使用序列到序列框架[Vinyals等,2015; Bello等,2016]一次输出一个节点的TSP巡视。 机理[Deudon等,2018,Kool等,2019]。 使用强化学习来训练策略,其中部分巡回长度用于在每个步骤中制定奖励功能。
在本文中,我们介绍了一种非自回归深度学习方法,该方法使用[Bresson and Laurent[2017]和波束搜索技术[Medress et al。,1977]。 图1概述了我们的方法。 我们的模型以图形为输入,并通过堆叠几个图形卷积层从其节点和边缘中提取构图特征。 神经网络的输出是一个边缘邻接矩阵,表示发生在TSP巡回路线上的边缘的概率。 使用事后光束搜索技术,将形成热图的边缘预测转换为有效的行程。 使用协和TSP求解器,使用成对的问题实例和最优解以监督的方式训练模型参数[Applegate等,2006]。
通过对具有20、50和100个节点的固定图大小的TSP实例进行经验比较,我们证明了我们的方法相对于其他深度学习技术的效率和速度:
•解决方案质量:与以前的方法相比,我们有效地训练了具有更好表示能力的深图ConvNets,从而在解决方案质量方面(从接近最优性方面)取得了显着的进步。
•推理速度:我们的图形ConvNet和波束搜索实现高度并行化以进行GPU计算,从而缩短了推理时间,并提高了对大型图形的可伸缩性。 相反,由于解码过程的顺序性质,自回归方法无法很好地缩放到大图,因此无法并行化。
•样本效率:与强化学习相比,使用成对的问题实例和最佳解决方案进行的有监督的培训设置具有更高的样本效率。 我们能够使用较少的训练数据来学习更好的近似求解器。

相关工作

旅行推销员问题(TSP)于1930年首次提出,是运筹学(OR)社区中研究最深入的组合优化问题之一。 即使在节点为2D点且边权重为点对之间的欧几里得距离的2D欧几里得情况下,找到最优的TSP解决方案也是NP-hard的[Papadimitriou,1977]。 在实践中,TSP求解器依靠精心制作的启发式方法来指导其搜索过程,从而为具有数千个节点的图有效地找到近似解。 如今,最先进的TSP求解器(例如Concorde [Applegate等,2006])已经使用了剖切平面算法[Dantzig等,1954; Padberg和Rinaldi,1991; Applegate等,2003]。 除了减少解决方案搜索空间的分支定界方法外,还迭代地解决了TSP的线性规划问题。
因此,为组合优化问题设计良好的启发式方法通常需要大量的专业知识和多年的研究工作。 由于这些问题具有高度结构化的性质,因此已使用神经网络来学习近似策略,尤其是对于那些对于设计启发式算法而言并非无关紧要的问题[Smith,1999,Bengio et al。,2018]。 历史工作的重点是使用Hopfield网络[Hopfield and Tank,1985]和可变形模板模型[Fort,1988,Angeniol et al。,1988]的基于学习的TSP方法。 然而,就速度和解决方案质量而言,这些方法的基准性能未达到算法方法的水平[La Maire和Mladenov,2012]。
序列到序列学习[Sutskever et al。,2014],注意力机制[Bahdanau et al。,2014]和几何深度学习[Bronstein et al。,2017]的最新进展使这一工作重获新生。 Vinyals等。 [2015]引入了序列到序列指针网络(PtrNet)模型,该模型利用注意力来输出输入序列的排列。 该模型经过训练,可以通过对问题实例和协和飞机生成的解决方案的监督,以自动方式自动输出TSP巡视。 在测试时间,他们使用束搜索程序以类似于神经机器翻译的方式建立有效的旅程[Wu et al。,2016]。 贝洛等。 [2016]通过使用Actor-Critic强化学习算法训练了无监督解决方案的PtrNet。 他们将每个实例视为一个训练样本,并使用样本解决方案的成本(行程长度)进行政策梯度的无偏蒙特卡洛估计。
戴等。 [2017]使用图神经网络对问题实例进行了编码,与序列到序列模型相比,该实例实例对于节点顺序是不变的,并且可以更好地反映TSP的组合结构。
他们训练了structure2vec图嵌入模型[Dai等,2016],以使用DQN训练方法[Mnih等,2013]和辅助函数以最佳插入的方式输出节点插入到局部游览中的顺序。 可能的位置。
Deudon等人的并行工作。 [2018]和Kool等。 [2019]用最近提出的图注意力网络[Veličkovićet al。,2017]取代了structure2vec模型,并使用了经过强化学习训练的基于注意力的解码器来自动回归构建TSP解决方案。
Deudon等。 [2018]表明,在模型产生的游览之上使用2OPT局部搜索的混合方法[Croes,1958]提高了性能。 Kool等。 [2019]使用功能更强大的解码器,并使用REINFORCE [Williams,1992]和贪婪的推出基线来训练模型,以在基于学习的TSP方法中获得最新的结果。
与自回归方法相反,Nowak等人。 [2017]以一种有监督的方式训练了图神经网络[Scarselli et al。,2009],以直接输出游览作为邻接矩阵,并使用波束搜索将其转换为可行的解决方案。 由于其单发性质,该模型无法在局部巡回中调节其输出,并且在非常小的问题实例中表现不佳。 我们的非自回归方法基于此工作。
已经提出了类似的基于学习的技术来推广TSP,例如车辆路线问题[Nazari等人,2018,Kool等人,2019]和多个TSP [Kaempfer and Wolf,2018],以及其他组合方法 最小顶点覆盖,最大割和最大独立集等问题[Dai等,2017; Li等,2018; Venkatakrishnan等,2018; Mittal等,2019]。

数据集

我们将重点放在2D欧式ETS上,尽管提出的技术也可以应用于稀疏图。 给定一个输入图,该图表示为二维2单位正方形S = {xi} ni = 1中n个城市(节点)的序列,其中每个xi∈[0,1],我们关注的是寻找点的置换 π̂,称为游览,它访问每个节点一次,并且具有最小的总长度。 我们将由置换π̂定义的游览的长度定义为
公式(1)
其中k·k 2表示`2范数。
由Vinyals等人介绍。 [2015],基于学习的TSP方法的当前范例基于对固定大小的问题实例的训练和评估模型性能。 因此,我们为大小为20、50和100的节点的图创建了单独的训练,验证和测试数据集。
培训集由一百万对问题实例和解决方案组成,验证和测试集各由10,000对问题组成。 对于每个TSP实例,在单位平方中随机地均匀采样n个节点位置。 最优行程π是用协和飞机[Applegate等,2006] 2找到的。 有关数据集摘要统计信息,请参见附录A。

模型

给定一个图作为输入,我们训练图ConvNet模型以直接输出与TSP巡视相对应的邻接矩阵。 网络为图中的每个节点和边缘计算h维表示。 边缘表示通过softmax输出层链接到地面真相TSP巡视,因此可以通过最小化通过梯度下降的交叉熵损失来端到端训练模型参数。 在测试期间,通过波束搜索将从模型获得的邻接矩阵转换为有效的行程。
4.1图卷积网
输入层作为输入节点要素,我们获得了二维坐标x i∈[0,1],它们嵌入到h要素中:
公式(2)
其中A 1∈R。 边缘欧几里得距离d ij被嵌入为特征向量。
k-NN我们还定义了一个TSP边缘δij的指标函数,如果节点i和j是k个近邻,则其值为1,对于自连接为2,否则为0。 边缘输入特征βij为:
公式(3)
其中A 2∈R 2×1,A 3∈R 2×3,·k·是级联算子。 由于TSP解决方案中的一个节点通常连接到其紧邻的节点,因此输入的k最近邻图加快了学习过程。
图卷积层令xi和eij分别表示与节点i和边缘ij关联的层上的节点特征向量和边缘特征向量。 我们在下一层将节点特征和边缘特征定义为:
公式(4)
公式(5)
其中W∈R h×h,σ是S形函数,ε是一个小值,ReLU是整流线性单元,而BN代表批量归一化。 在输入层,我们有x= 0 =αi和e = 0 =βij。 提出的图ConvNet利用Bresson和Laurent [2017]的附加边缘特征`表示以及密集的关注图ηij,这使得图上的扩散过程各向异性。
有关图卷积层的详细说明,请参见附录B。
MLP分类器最后一层的边缘嵌入e ij用于计算该边缘在图形的TSP巡回中被连接的概率。 可以将这种可能性视为在游览连接的邻接矩阵上计算2个概率热图。 每个p TSP ij∈[0,1]由多层感知器(MLP)给出:
公式(6)
实际上,我们可以具有由l mlp表示的任意数量的层。
损失函数给定地面真相TSP巡视排列π,我们将巡视转换为邻接矩阵,其中每个元素p̂ TSP ij表示TSP巡视中节点i和j之间是否存在边缘。 我们最小化了迷你批次平均的加权二进制交叉熵损失。 随着问题规模的增加,分类任务在消极类别上变得高度不平衡,这需要适当的类别权重来平衡这种影响。
4.2波束搜索解码
我们模型的输出是巡回连接的邻接矩阵上的概率热图。每个p TSP ij∈[0,1]表示节点i和j之间的边缘预测强度。 基于概率链规则,可以将部分TSP巡视π0的概率表示为:
公式(7)
其中在局部巡视π0中,每个节点j 0跟随节点i 0。 但是,通过argmax函数将概率热图直接转换为预测的TSP巡回π̂的邻接矩阵表示通常会产生无效巡回,在π̂中有多余或不足的边缘。 因此,我们在评估时采用了三种可能的搜索策略,将概率边缘热图转换为节点π的有效置换。
贪婪搜索通常,贪心算法会选择局部最优解以提供全局最优解的快速近似。 从第一个节点开始,我们根据存在边的最高概率从其邻居贪婪地选择下一个节点。 访问所有节点后,搜索将终止。 我们屏蔽掉以前访问过的节点,以构造有效的解决方案。
波束搜索波束搜索是有限宽度的广度优先搜索[Medress et al。,1977]。 波束搜索是一种流行的方法,可以从生成的模型中获得用于自然语言处理任务的一组高概率序列[Wu等人,2016]。 从第一个节点开始,我们通过在节点的邻居之间扩展b个最可能的边缘连接来探索热图。 我们迭代地扩展每个阶段的前b个局部游览,直到访问了图中的所有节点。 我们遵循与贪婪搜索相同的掩蔽策略来构建有效的游览。 最终预测是波束搜索结束时,在b个完整巡回中概率最高的巡回。 (请注意,b称为波束宽度。)
波束搜索和最短游览启发式而不是在波束搜索结束时选择概率最高的游览,我们在b个完整游览中选择最短的游览作为最终游览 解。 这种基于启发式的波束搜索可直接与TSP的强化学习技术相媲美,后者从学习到的策略中采样一组解决方案,并选择其中最短的旅程作为最终解决方案[Bello等,2016; Kool等, 2019]。
4.3超参数配置
我们在所有三个问题大小中使用一组相同的模型超参数。 每个模型在MLP中由l conv = 30个图形卷积层和l mlp = 3层组成,每层的隐藏维数h = 300。 我们使用固定的波束宽度b = 1,280,以便将我们的结果与当前的最新技术[Kool等,2019]进行比较,该技术从博学的政策中抽取1,280个解决方案。 对于邻接矩阵W adj中的每个节点,我们考虑k = 20最近的邻居。 (我们发现最近的20个邻居图是每个问题大小的训练集在TSP解空间上的近似上限。)

实验

5.1训练程序
我们遵循标准的训练程序来训练每种问题大小的模型。 给定一个图作为输入,我们通过最小化通过梯度下降的交叉熵损失来训练图ConvNet模型以直接输出与TSP巡回相对应的邻接矩阵。
训练循环对于每个训练纪元,我们从训练集中随机地从一百万个问题实例中选择一个子集。 该子集分为500个迷你批次,每个批次包含20个实例。 我们使用初始学习率为0.001的Adam优化器[Kingma and Ba,2014]来最小化每个微型批处理的交叉熵损失。
学习率衰减我们在5个训练时期的固定间隔的10,000个实例的保留验证集中评估模型。 如果验证损失没有减少到先前验证损失的至少1%,则我们将优化器的学习率除以1.01的衰减因子。 随着训练的进行,使用较小的学习率可以使我们的模型学习更快,并收敛到更好的局部最小值。
5.2评估程序在对验证和测试集进行评估的过程中,将从模型中获得的邻接矩阵通过第4.2节中所述的搜索策略转换为有效巡回路线。 由于在评估期间不需要进行反向传播,因此可以使用适合整个GPU内存的任意大批量。继[Kool等人,2019]之后,我们报告了以下指标来评估我们的模型与最佳解决方案(使用Concorde获得)相比的性能:
预测行程P长度在10,000个测试实例上的平均预期TSP行程长度l TSP,m 1 TSP计算为m i = 1 l m。
最优差距在10,000个测试实例中,预测行程长度T TSP与最优P m 1 TSP ˆ TSP解ˆ L TSP的平均百分比比率,以m i = 1 l m / l m − 1计算。
评估时间在单个GPU(Nvidia 1080Ti)上或在32个虚拟CPU系统(2×Xeon E5-2630)上并行32个实例时,解决10,000个测试实例所需的总挂钟时间。
重要的是要注意,所有深度学习方法都使用搜索或采样。 因此,可以通过搜索更长的时间或采样更多的解决方案来权衡运行时间以提高解决方案的质量。 运行时间也可能因实现(Python与C ++)或硬件(GPU与CPU)而异。 Kool等。 [2019]采取了实用的观点,并报告了解决10,000个实例的测试集所需的时间。

6结果

表1展示了针对各种TSP实例大小,与未学习的基准和最新的深度学习技术相比,我们的技术的性能。 该表分为三个部分:精确求解器,贪婪方法(G)和基于采样/搜索的方法(S)。 方法根据训练技术进一步分类:监督学习(SL),强化学习(RL)和非学习启发式(H)。 除我们的结果(粗体显示)以外的所有结果均摘自Kool等人的表1。 [2019]。 有关求解器(Concorde,LKH3和Guorobi)和未学习的基准(最近插入,随机插入,最远插入,最近邻居)的更多详细信息,请参见Kool等人的附录B。 [2019]。 继库尔等。 [2019],测试集中使用两个GPU对TSP100模型进行了评估,并报告了单个GPU模型的其他时序。
贪婪的环境在贪婪的环境中,基于学习的方法明显胜过所有非学习的启发式方法。 我们的图形ConvNet模型无法匹配Kool等人的GAT模型的性能或评估时间。 [2019]。 的确,自回归模型在这种情况下是快速的,因为它们是专门为此设计的:它们逐节点输出TSP巡回排列,将每个预测调整为局部巡回。 相反,我们的模型可以独立于其他边缘预测来预测任意一对节点之间的边缘。 从模型中获取预测并执行贪婪搜索以将其转换为有效行程的两步过程增加了时间开销。
搜索/采样设置通常,所有基于学习的方法都可以通过搜索或采样解决方案来提高贪婪设置的性能。 具有波束搜索功能的图形ConvNet模型的性能优于Kool等。 [2019]在搜索/采样1,280个解决方案时的接近最优性和评估时间方面。 我们将性能的提高归功于通过使用具有多达30个图卷积层的深度架构,可以更好地学习输入图的表示形式。 相反,Kool等。 [2019]仅使用3个图形注意层。 尽管较大的模型在计算上更昂贵,但我们的图形ConvNet和波束搜索实现高度并行化以进行GPU计算,与从强化学习策略中进行采样相比,可大大加快评估速度。
将学习的启发式和传统的启发式结合起来从Deudon等人的结果可以看出。 [2018],自回归模型可能不会产生局部最优,并且可以通过使用学习算法与局部搜索启发式算法(例如2-OPT)的混合方法来提高性能。 我们的非自回归模型也具有相同的观察结果。 在波束搜索中添加最短的巡回启发式搜索可以提高我们的性能,但会浪费评估时间。 当将诸如2-OPT之类的启发式方法结合到波束搜索解码中时,未来的工作将探索性能与计算之间的进一步权衡。
SL与RL的样本效率图2显示了我们的方法与Kool等人相比,验证最优差与训练样本数的关系。 [2019]。 对于较小的实例(TSP20),两种方法在看到少于500,000个样本后都能找到最优值的1%以内的解决方案。 解决更大的问题实例(TSP50和TSP100)需要更多的训练样本。 与强化学习相比,我们的监督训练设置更有效地提高样本效率,因为我们使用有关问题的完整信息来训练模型,而RL训练则由稀疏的奖励函数来指导。
每个训练图都是动态生成的,重要的是要注意,,并且对于RL是唯一的。 相反,我们的监督方法从固定的一百万个实例集中随机选择并重复训练图(及其地面实况解决方案)。
泛化为各种问题的大小对于学习组合问题,跨各种大小的TSP实例进行泛化是非常理想的属性。 大小不变的概括将使我们能够扩展到非常大的TSP实例,同时在较小的实例上进行有效的训练。 从理论上讲,由于我们模型的参数Θ与实例n的大小无关,因此我们可以使用在较小图上训练的模型来求解任意大实例。
表2列出了我们的方法和Kool等人的方法的概括性能。 [2019]通过评估所有其他大小的固定问题大小的最佳性能模型。 我们发现非自回归模型的性能急剧下降,表明泛化能力很差。 图形ConvNet所学习的表示形式正在存储特定图形大小的模式,并且无法转移到新图形。 相反,Kool等人的自回归方法。 [2019]的泛化性能下降不那么剧烈。 在以后的工作中,我们将进一步探索针对大规模组合问题的概括和转移学习。
附录C中提供了有关模型体系结构的培训日志和其他结果。附录D包含有关组合问题的监督学习与强化学习的进一步讨论。 附录E中提供了通过我们的方法产生的解决方案的可视化和定性分析。

结论

我们介绍了一种新颖的基于学习的方法,该方法可使用图ConvNets和波束搜索来近似解决2D欧式旅行商问题。 对于固定的图形大小,由于更好的图形表示能力,高度并行的实现以及从最佳解决方案中学习,我们的框架在解决方案质量,推理速度和样本效率方面都优于所有以前的深度学习技术。 未来的工作将探索将迁移学习和强化学习纳入我们的框架,以便推广到大规模的问题实例,并解决TSP之前无法遇到的组合问题。

附录

数据集摘要统计
表3中列出了各种TSP数据集的摘要统计信息。除了TSP20,TSP50和TSP100外,我们还包括TSP10和TSP30。 Concorde的近似求解器时序是在平均负载下为32核CPU服务器上的单线程程序计算的。 自然,随着问题规模的增加,协和式飞机需要更长的时间才能找到确切的解决方案。 在类似的机器上,生成大于1000个节点的问题大小的数据集是不切实际的。
图卷积层详细信息
对于第4.1节中描述的图ConvNet,让xi表示与节点i关联的图层上的特征向量。 通过对节点i附近(由图结构定义)的所有节点j的特征向量xj进行非线性变换i,可以得到下一层的激活x+1。
因此,在图ConvNet的顶点i处,特征向量x+1的最通用形式是:
公式(8)
其中{j〜i}表示以节点i为中心的相邻节点的集合。 换句话说,图ConvNet是由映射f定义的,其中将向量xi(中心顶点的特征向量)以及无序向量{xj}(特征向量 所有相邻的顶点)。 映射f的任意选择定义了诸如Sukhbaatar等人的一类图神经网络的实例。 [2016],Kipf和Welling [2016],Hamilton等。 [2017]。
对于这项工作,我们通过定义节点特征x+1和边缘特征e+ 1 i ij来利用Bresson和Laurent [2017]中引入的图ConvNet体系结构,如下所示:
公式(9)
公式(10)
其中W∈R h×h,σ是S形函数,ε是一个小值,ReLU是整流线性单元,而BN代表批量归一化。 在输入层,我们有x= 0 =αi和e= 0 =βij。
我情商 (9)类似于图上的可学习的非扩散过程,其中扩散时间为层数。 由于任意图没有特定的方向(上,下,左,右),因此图上的扩散过程是各向同性的,因此所有邻居都同样重要。 但是,通常情况下可能并非如此,例如 节点的同一社区中的邻居与单独社区中的邻居共享不同的信息。 我们使用可学习的归一化边缘门e`ij通过点乘运算使扩散过程各向异性,例如在[Marcheggiani and Titov,2017]中。 等式 等式(10)也代表了边缘特征在图上的可学习的非扩散过程。 网络学习最佳的边缘表示形式,以对图结构上的信息流进行编码。
此外,我们执行批处理归一化[Ioffe and Szegedy,2015],以实现对深度架构的快速培训。 等式中的残余连接。 (9)对于最小化消失梯度问题对反向传播的影响至关重要[He et al。,2016]。 图3说明了该模型。
其他结果
训练日志图4显示了各种跑步的学习率和损失值与训练样本数的关系。 将学习速率降低到非常小的值可以使训练损失平稳地降低。 TSP50和TSP100的损耗曲线表明,在看到大约400万个样本后,模型开始过度拟合训练集。 但是,如图2所示,随着模型对训练数据的过度拟合,验证最优性差距不会变差。
为了更快地进行训练,使用四个Nvidia 1080Ti GPU对TSP100模型进行了训练。 但是,使用多GPU设置来训练或评估我们的模型并不是必需的:通过训练更长的时间,单个GPU可以达到相同的结果。
模型容量图5a给出了针对各种模型容量(定义为图卷积层数和隐藏维数)的TSP50验证最优性差距与训练样本数的关系。 通常,我们发现较小的模型能够以与较大的模型大致相同的接近性来学习较小的问题大小。 增加模型容量会导致更长的培训时间,但对于放大到较大的问题大小而言至关重要。
为了使问题大小之间的分析一致性,我们的主要结果使用的模型为硬件设置(4×Nvidia 1080Ti GPU)和最大问题大小(TSP100)提供了最大可能的容量(30层,隐藏尺寸为300)。
波束宽度图5b给出了针对各种问题大小的验证最优间隙与波束宽度的关系。 对于较小的问题,将光束宽度增加到200以上会对性能产生较小的影响。 对于TSP100,使用大光束宽度对于性能至关重要。
强化学习方法,例如Kool等。 [2019]从学习到的策略中抽取了1,280个示例(在单个GPU中,模型的时间少于1秒),并报告了其中最短的示例作为最终解决方案。 对于我们的主要结果,我们使用1,280的光束宽度以直接与他们的方法进行比较。 由于我们的方法具有非自回归特性,因此可以在单个GPU上使用大于1秒内1,280的光束宽度进行搜索。
注意力类型传统的基于softmax的注意力机制(例如GAT中使用的注意力机制)是一种稀疏的注意力,其中大多数重要性都在最大值上。 相比之下,我们的图ConvNet(等式(4))的基于S形的边缘门控机制可以称为密集注意机制,其中所有饱和的S形导致相同的重要性。 我们对TSP的稀疏注意力机制和密集注意力机制进行了简短的实验,发现密集注意力会导致略微更好的性能和更低的GPU内存消耗。 图5c显示了两种注意力类型(所有其他模型超参数都相同)的验证最优性差距与TSP50训练样本数的关系。
监督学习与强化学习
如Bengio等人所述。 [2018],基于监督学习的组合优化问题模型的性能取决于大量优化或高质量解决方案的可用性。 因此,在将这些问题表述为有监督的学习任务时会出现两个关键问题:(1)我们仅限于学习经过充分研究的问题,对于这些问题,可以使用最佳求解器或高质量的启发式算法; (2)我们只能针对小规模的问题进行训练,因为为NP难题的大型实例构建数据集是很困难的。
尽管已知强化学习比监督学习在计算上更昂贵/样本效率更低,但它不需要生成问题实例和解决方案对。
只要可以通过奖励信号制定问题以做出顺序决策,就可以通过RL训练策略。 因此,有关基于学习的TSP方法的最新工作已使用RL [Deudon等,2018; Kool等,2019]。 SL方法的性能相对较差[Vinyals等,2015; Nowak等,2017]支持了关于强化学习的观点。
与Vinyals等人不同。 [2015]和Nowak等。 [2017],我们的方法使用深图ConvNets,它们能够从一组更大的最佳TSP解决方案培训中学习(一百万个实例)。 就解决方案质量和样品效率而言,我们的方法优于所有其他基于学习的方法。 鉴于足够的训练数据,SL技术通常胜过RL技术,因此这一结果不足为奇。 但是,对于较大的实例,SL的优势迅速消失。 对于超过数百个节点的问题大小,生成一百万个训练样本就计算和速度而言可能变得很棘手。 随着问题规模的增加,TSP的组合复杂性迅速增加,这被称为组合爆炸,这使得将我们的方法扩展到大型TSP变得困难重重。
因此,将RL纳入解决任意问题的规模是我们方法的下一个自然发展:未来的工作将探索通过ConvNet图学习政策网络,优化流程长度和应用波束搜索而没有最佳解决方案。 对小型实例的有监督的培训以及使用RL通过在大型实例上微调模型参数来转移学习是一种吸引人的方法,可以扩展到超过数百个节点的实际大小。
解决方案可视化
图6、7和8显示了来自各种问题实例的测试集中的样本的预测可视化。 在每个图中,第一个面板显示输入的k最近邻图和groundtruth TSP巡视。 第二个面板表示图ConvNet模型的概率热图输出。
最后的面板显示了在热图上进行光束搜索后,预计的TSP行程。
对于节点均匀分布的小型实例,该模型能够可靠地识别热图中的大多数游览边缘,从而使贪婪的搜索能够找到接近最佳的游览。 随着实例大小的增加,预测热图会反映TSP中的组合爆炸,并且光束搜索对于找到最佳行程至关重要。

你可能感兴趣的:(RL&OR,算法,人工智能,机器学习)