Featured image of post 【读论文】Unsupervised Learning for Solving the Travelling Salesman Problem

【读论文】Unsupervised Learning for Solving the Travelling Salesman Problem

这篇文章提出了一种使用无监督学习方法生成 heatmap 解决 TSP 的框架:UTSP

论文信息

UTSP 算法

作者认为理想的 heatmap $\mathcal{H}\in[0,1]^{n\times n}$ 应该表示 TSP 的最优解,即一条长度最短的汉密尔顿环路,也就是:

  1. $\mathcal{H}$ 作为邻接矩阵表示的图内有且仅有一条汉密尔顿环路;
  2. $\mathcal{H}$ 表示的环路长度最短,即$$\min_\mathcal{H}\sum^n_{i=1}\sum^n_{j=1} \mathcal{H} _{ij}\cdot d _{ij}$$

为了让网络输出的 $\mathcal{H}$ 满足第一个条件,作者设计了 soft indicator matrix $\mathbb{T}\in[0,1]^{n\times n}$,$\mathbb{T}=[\mathbf p_1|\mathbf p_2|\cdots|\mathbf p_n]$ 是$n$个列向量组成的矩阵,满足各列和为$1$($\sum_{j=1}^n p_{ij} = 1$),这个条件可以使用 Softmax 函数或者归一化满足,论文里使用了前者。

然后作者提出了 $\mathbb{T}\rightarrow\mathcal{H}$ transformation,以将 soft indicator $\mathbb{T}$ 转化为可以采样的 heatmap $\mathcal{H}$:$$\mathcal{H} = \sum_{i=1}^n \mathbf p_i\cdot \mathbf p_{i+1}^T + \mathbf p_n\cdot \mathbf p_1^T$$ 同时作者也证明了这样形成的 heatmap 中至少有一条汉密尔顿环路,这样就满足了第一个条件的一半(有一条)。

至于剩下的一半(不超过一条),作者使用设计的 loss 函数鼓励网络减少环路数量: $$\mathcal{L}=\lambda _1 \sum^n _{i=1}(\sum^n _{j=1}\mathbb{T} _{ij}-1)^2 + \lambda_2 \sum^n _{i=1}\mathcal{H} _{ii} + \sum^n _{i=1}\sum^n _{j=1} \mathcal{H} _{ij}\cdot d _{ij}$$ 其中第一项鼓励 $\mathbb T$ 每行的和接近 $1$;第二项惩罚 $\mathcal{H}$ 中的自环;第三项对应上面的第二个条件,即让图里所有边的加权和尽可能小。最理想的情况下前两项都是 $0$,$\mathcal L$等于TSP最优解的路径长度。UTSP 通过设置这样的 loss 函数,让神经网络输出的结果靠近理想的 heatmap。

此外,文章使用了 Scattering Attention GNN (SAG) 作为神经网络,在搜索前用 top-k 缩小搜索空间,并使用 Heat Map Guided Best-first Local Search 作为局部搜索方法。

优势与局限性

根据文章,UTSP 的优势是:

  • 相比于有监督学习,UTSP 不需要有标注的数据,相比于强化学习,UTSP 的收敛速度更快(需要的样本数量更少);
  • UTSP 直接从 heatmap 计算 loss,省去了强化学习依赖采样获得 reward 的过程;
  • 通过结构设计保证输出的heatmap含有汉密尔顿环路;
  • 神经网络很轻量化(TSP100 仅需两层 45k 个参数);
  • 可以有效地减小搜索空间。

我认为 UTSP 的局限性是:

  • 根据提供的实验数据,UTSP 即使有轻量化的网络,它生成 heatmap 需要的时间依然比 Att-GCRN[2] 要长(为什么呢?);
  • Soft indicator 是针对 TSP 的巧妙设计,只适用于解为汉密尔顿环的问题,并且 UTSP 需要针对问题精心设计 loss 函数,因此将 UTSP 迁移到别的组合优化问题时,相比于一些有监督学习和强化学习方法(分别可以通过有标签的数据和 reward 学习问题特征)需要更多工作。

几个问题:

  • 在将边权重输入网络时,文章进行了预处理:$w_{ij}=e^{-d_{ij}/\tau}$,这样做除了将输入映射到 $(0,1]$ 之外,相比于直接输入 $w_{ij}=d_{ij}$ 还有什么作用嘛;
  • 如果不采用 Soft indicator,实验结果会有多大变化。

相关文献

[1] Y. Min, Y. Bai, and C. P. Gomes, “Unsupervised Learning for Solving the Travelling Salesman Problem,” in Advances in Neural Information Processing Systems, A. Oh, T. Neumann, A. Globerson, K. Saenko, M. Hardt, and S. Levine, Eds., Curran Associates, Inc., 2023, pp. 47264–47278. [Online]. Available: https://proceedings.neurips.cc/paper_files/paper/2023/file/93b8618a9061f8a55825c13ecf28392b-Paper-Conference.pdf
[2] Z.-H. Fu, K.-B. Qiu, and H. Zha, “Generalize a Small Pre-trained Model to Arbitrarily Large TSP Instances,” Proceedings of the AAAI Conference on Artificial Intelligence, vol. 35, no. 8, pp. 7474–7482, May 2021, doi: 10.1609/aaai.v35i8.16916.
使用 Hugo 构建
主题 StackJimmy 设计