TSP with Predictions: Heatmap to Tour with Provable Guarantees

Marek Eliáš
marek.elias@unibocconi.it

,

Fabrizio Grandoni
fabrizio@idsia.ch

,

Adam Polak
adam.polak@unibocconi.it

,

Eleonora Vercesi
eleonora.vercesi@usi.ch


Abstract

The Traveling Salesperson Problem (TSP) has long served as a benchmark for evaluating the strength of optimization techniques in the classical theory of algorithms. In recent efforts to apply ML to algorithmic problems, TSP has also become a natural testbed for the development of ML-based techniques. A common approach is to train a neural network to output a heatmap estimating the likelihood of each edge to be part of the optimal tour; however, converting such a heatmap into an actual tour remains a non-trivial and often computationally intensive step. In this work, we propose algorithms for transforming heatmaps into tours with theoretical guarantees linking the achieved approximation ratio to the quality of the provided heatmap. In the spirit of algorithms with predictions, our results can be described as \((1+2\frac{\eta}{\mathop{\mathrm{OPT}}})\)-approximation algorithms, where \(\eta\) denotes the L1 distance between the prediction (heatmap) and an optimal solution (tour). Since the previous works lack such explicit guarantees, we compare our approach against them experimentally.

1 Introduction↩︎

We study the Traveling Salesperson Problem (TSP), one of the key problems in combinatorial optimization: We are given a road network between \(n\) cities represented by an undirected edge-weighted graph \(G\). Our task is to find a closed walk in \(G\) of minimum total weight that visits every city (at least once).

Our main result is an algorithm that takes as input a TSP instance and additionally, for each edge, a number between \(0\) and \(1\) denoting how likely this edge is to belong to an optimal TSP tour. These additional numbers can be understood as predictions or a heatmap. The algorithm outputs a tour that is guaranteed to be at most \(2\eta\) longer than an optimal tour, where \(\eta\) denotes the L1 distance between the predictions vector and a groundtruth optimal tour.

Our contribution can be understood in two contexts: a theoretical context of the so-called algorithms with predictions (a.k.a. learning-augmented algorithms) [1], [2], and a practical context of the so-called solution search stage in the neural combinatorial optimization pipeline [3].

1.0.0.1 Algorithms with predictions.

This line of work tries to combine provable worst-case guarantees of classical algorithms with great beyond worst-case performance of ML models. The idea is to have a classical algorithm taking as additional input an uncertain hint – prediction of an ML model – and have its performance (e.g., running time or solution cost) bounded by a function of the error of the prediction. Despite almost 400 papers [2] developed over the last few years, approximation algorithms for TSP have not been studied in this paradigm. We address this gap in the literature.

1.0.0.2 Neural combinatorial optimization.

It is a big question if and how neural networks (NNs) can help solving combinatorial optimization problems with many hard constraints, which are usually hard to impose on NN’s output [4]. TSP has long served as a benchmark for combinatorial optimization techniques, and it has a long history of hand-optimized solvers [5], [6]. So it is interesting to understand if NNs can beat them. A common neural optimization approach to TSP – formalized by [3] into a five-stages pipeline – is to have a (graph) NN that assigns to each edge the probability that it belongs to an optimal solution (the so-called heatmap), followed by a “solution search” algorithm that turns these probabilities into an actual solution (a tour). Initially, researchers used very simple solution search algorithms, e.g., greedy search or beam search [7][10], which have no theoretical guarantees linking the NN performance to the final solution cost. Our algorithm is a drop-in replacement for the solution search stage, and tends to work better than greedy in practice (see Section 8).

More recently, researchers started using Monte Carlo Tree Search (MCTS) for solution search [11], making it the heaviest part of the pipeline, heavier than the NN itself. Actually, [12] argue that then NNs become useless, because one can as well replace the input to MCTS with a simple heuristic (the softmax of negative edge weight). Overall, MCTS does lead to better results, but this does not answer the original question of how NNs can help in combinatorial optimization.

To summarize, people started using MCTS in the pipeline because greedy search was not good enough, but with MCTS the NN becomes useless. Our algorithm is a better replacement for greedy search, but, unlike MCTS, it heavily uses the NN output while itself remains lightweight. Hence, our algorithm creates an opportunity for better NNs to become useful overall.

1.1 Our results↩︎

We propose algorithms for TSP that, given any vector of probabilities (a.k.a. heatmap) of each edge to belong to an optimal solution, computes a feasible TSP tour. This tour is provably near-optimal whenever the given heatmap is sufficiently accurate. We experimentally compare the solutions produced by our algorithms on Euclidean instances of TSP with existing heatmap-based techniques in the literature, considering heatmaps produced by NNs as well as by standard heuristics.

1.1.0.1 Definition of TSP.

Let \(G=(V,E)\) be a complete undirected graph (i.e., \(E=\binom{V}{2}\)) and \(w\colon E\to \mathbb{R}_+\) the weights of its edges satisfying the triangle inequality1 (\(w(uv)\leq w(uz) + w(zv)\) for all \(u,v,z\in V\)). We want to find the optimal TSP tour, i.e., the Hamiltonian circuit on \(G\) with the smallest weight.

Consider a heatmap \(p\in [0,1]^E\). Ideally, we want \(p\) to be the characteristic vector \(\chi^{X^*}\) of some optimal TSP tour \(X^*\). We define the prediction error of \(p\) with respect to \(X^*\) as \[\eta = \eta(p,X^*)= \sum_{e\in E} \big|p_e - \chi^{X^*}(e)\big|\, w(e).\] Our algorithm satisfies the following:

Theorem 1. Let \(G=(V, E)\) be a complete graph on \(n\) vertices with edge weights \(w\colon E\to \mathbb{R}_+\) satisfying triangle inequality. There is an algorithm running in time \(O(n^3)\) which, receiving a heatmap \(p \in [0,1]^E\) with error \(\eta\) with respect to some TSP tour \(X^*\), finds a TSP tour \(X\) of weight \[\mathbb{E}[w(X)] \leq w(X^*) + 2\eta.\]

In fact, our algorithm works with a prediction \(P\subseteq E\), where each \(e\in E\) is included in \(P\) independently with probability \(p\). Theorem 1 can be equivalently stated in terms of \(\eta(P,X^*) := \eta(\chi^P,X^*) = w(P\Delta X^*)\), where \(\mathbb{E}[\eta(P,X^*)] = \eta(p,X^*)\). In Section 7, we show that the linear dependence on \(\eta\) is necessary.

The statement of Theorem 1 holds for all TSP tours \(X^*\) simultaneously (optimal or not), which can be interpreted as follows: As far as \(p\) has a small error with respect to some TSP tour of a small weight, the algorithm will also find a tour of a small weight. An alternative way of stating this guarantee is \[\mathbb{E}[w(X)] \leq \min \{w(X^*) + 2\eta(p,X^*)\mid X^* \text{ is a tour in G}\}.\]

Our algorithm is based on the classical 1.5-approximation algorithm by [14]: It starts by finding a minimum spanning tree \(T\) biased towards edges suggested by \(p\). Then, it finds a minimum-weight perfect matching \(J\) of the odd-degree vertices in \(T\). While efficient implementations of algorithms for minimum-weight perfect matching exist [15], this step remains the major contribution to the running time of our algorithm. We can replace the exact algorithm for matching with a 2-approximation [16] to achieve a near-linear running time while losing a constant factor only in the dependence on \(\eta\). However, this requires, counterintuitively, biasing \(T\) towards the heaviest edges suggested by \(p\) and a more careful analysis. Note that the input size of a weighted complete graph on \(n\) vertices is \(\Theta(n^2)\). Even faster running times can be achieved on Euclidean and graphical instances which allow succinct representation, see below.

Theorem 2. Let \(G=(V, E)\) be a complete graph on \(n\) vertices with edge weights \(w\colon E\to \mathbb{R}_+\) satisfying triangle inequality. There is an algorithm running in time \(O(n^2\log n)\) which, receiving a prediction \(p \in [0,1]^E\) with error \(\eta\) with respect to some TSP tour \(X^*\), outputs a TSP tour \(X\) of weight \[\mathbb{E}[w(X)] \leq w(X^*) + 11\eta.\]

1.1.0.2 Euclidean TSP.

This is a special case of TSP which admits a succinct representation of the input complete graph \(G=(V,E)\). Each vertex \(v\in V\) is a point in the Euclidean plane and from such input of size \(\Theta(n)\) we can compute \(w(uv) = \lVert u-v\rVert_2\) for each pair \(u,v\in V\). Theorem 1 holds in this setting as stated and we can improve the running time of the algorithm in Theorem 2 to \(O((n+|P|)\mathop{\mathrm{polylog}}n)\) using the fast algorithm for Euclidean MST [17] and an approximation algorithm for Euclidean matching [18].

1.1.0.3 Graphical TSP.

Here, \(G\) is a connected graph and \(w\colon E\to \mathbb{R}^+\) is arbitrary [19]. In this case, an optimal tour may need to traverse some edges twice and visit some vertices multiple times. Every instance of metric TSP can be seen as an instance of graphical TSP on the same complete graph, since repetitions of vertices can be eliminated without increasing the weight of the tour. On the other hand, any instance of a graphical TSP on a graph \(G\) can be modeled as an instance of metric TSP on the metric closure of \(G\) which is a complete graph whose edge weights represent the shortest path metric on \(G\). We refer to [20] for more details. The most interesting case is when \(G\) is sparse and can be represented in the space much smaller than its metric closure. Therefore, we want an algorithm with near-linear running time in the size of \(G\) instead of its metric closure.

Since tours in this setting may pass some edges several times, we assume that the predictor provides us information about the multiplicities. The algorithm receives a multiset \(P\) of edges which are likely to be used by an (optimal) tour \(X^*\) (that is also a multiset) which may be derived, e.g., from the output of some NN. Information about the multiplicities of the edges is necessary to achieve near-linear running time, see Section 6 for details. The error \(\eta\) of prediction \(P\) with respect to \(X^*\) is defined as \[\label{eq:grapherror} \eta := w(P \Delta X^*) = \sum_{e\in E} \lvert m_P(e) - m_{X^*}(e)\rvert\, w(e),\qquad{(1)}\] where \(m_S(e)\) denotes the multiplicity of \(e\) in the multiset \(S\).

Theorem 3. Let \(G=(V, E)\) be a graph on \(n\) vertices and \(m\) edges with weights \(w\colon E\to \mathbb{R}_+\). There is an algorithm running in time \(O(m\log n)\) which, receiving a prediction \(P\) with error \(\eta\) with respect to some TSP tour \(X^*\), outputs a TSP tour \(X\) of weight \[w(X) \leq w(X^*) + 4\eta.\]

Interestingly, if we do not require near-linear running time, predicting edge multiplicities is not necessary. Algorithm from Theorem 1 can be extended to this setting, preserving both its running time and approximation guarantees.

2 Related work↩︎

2.0.0.1 Algorithms with predictions.

Also known as learning-augmented algorithms (see the survey by [1] and updated list of papers by [2]), have been first studied for online problems [21], [22], with the premise that ML models may predict future data. Starting with the seminal work by [23], predictions are also used to improve offline (static) algorithms, which becomes useful when solving multiple similar instances and an ML model can discover a common structure. Among those, there are only few works that concern approximation algorithms. The closest to our work is the one by [24] about subset selection problems. Unfortunately, their algorithm does not preserve triangle inequality of the input instance and therefore it does not apply to TSP (see also Remark 4). [25] proposed an algorithm for permutation problems including TSP running in (large) polynomial time which finds an optimal solution in the setting with \(\epsilon\)-accurate predictions where errors occur independently at random.

2.0.0.2 Neural combinatorial optimization.

In this vast area of research [4], [26], TSP plays a central role. Papers most closely related to our work are discussed in Sections 1 and 8.

Beyond the heatmap-to-tour paradigm, several alternative approaches have emerged. Reinforcement learning (RL) has been explored extensively, with methods like POMO [27] and other policy-based approaches [28] showing promising results. Transformer-based architectures have also gained attention, including MatNet [29] and BQ-NCO [30]. Additional architectural innovations are explored in Sym-NCO [31] and DIMES [32].

More recently, Preference Optimization (a technique that transforms quantitative reward signals into qualitative preference comparisons) has gained attention as an alternative to RL-based approaches [33][35]. Concurrently, other works have explored hybrid architectures that blend global predictions with local solution construction [36], [37], while further methods divide the search space into sub-problems solved after by neural solvers in sequence [38].

Another emerging paradigm aims to train general-purpose neural solvers capable of addressing diverse combinatorial problems with a single model [39], [40]. For a comprehensive analysis of these various architectural choices and their roles in neural combinatorial optimization, particularly for TSP, we refer the reader to [41].

2.0.0.3 TSP.

The problem is known to be NP-hard, and even hard to approximate if distances do not satisfy the triangle inequality and nodes cannot be visited twice [42]. In the metric case, there are simple 2-approximation algorithms [43], and [14] and [44] proposed a 1.5-approximation algorithm, which was only improved recently to \(1.5-10^{-36}\) [45]. We refer to the textbooks by [46] and [20].

2.0.0.4 Fast algorithms for Euclidean graphs.

Euclidean setting often allows algorithms with improved performance. In particular, [47] proposed an approximation scheme for Euclidean TSP, Euclidean minimum spanning tree can be computed in time \(O(n\log n)\) using Delaunay triangulations [17], and [18] proposed an \((1+\epsilon)\)-algorithm for Euclidean min-weight perfect matching running in time \(O(\epsilon^{-3}n\log^6 n)\).

3 Notation and preliminaries↩︎

In some parts of the paper, we work with multisets, extending classical set operations as follows. Let \(F\) be a multiset from a universe \(U\), and \(m_F(e)\in \mathbb{N}\) denote the multiplicity of \(e\in U\) in \(F\). Then the following holds for any \(3\) multisets \(S\), \(A\), and \(B\) of \(U\) and any \(e\in U\). If \(S=A\cap B\), then \(m_S(e) = \min\{m_A(e),m_B(e)\}\). If \(S = A + B\), then \(m_S(e) = m_A(e)+m_B(e)\). If \(S = A - B\), then \(m_S(e) = \max\{m_A(e)-m_B(e), 0\}\). We also define the symmetric difference \(A\Delta B = (A-B)+(B-A)\).

Given an input graph \(G=(V,E)\), we denote by \(n=|V|\) the number of its vertices and by \(m=|E|\) the number of its edges. We say that edge weights \(w\colon E\to \mathbb{R}^+\) are metric if they satisfy triangle inequality, i.e., if we have \(w(uv)\leq w(uz) + w(zv)\) for each \(u,v,z\in V\). For a set \(F\subseteq E\), we denote by \(\mathop{\mathrm{odd}}(F)\) the set of vertices in \((V,F)\) with an odd degree. We say that \(G = (V,E)\) is Eulerian, if \(\mathop{\mathrm{odd}}(E) = \emptyset\). Given a set \(S\subseteq V\) of even size, we call \(J \subseteq E\) an \(S\)-join if \(\mathop{\mathrm{odd}}(J) = S\). We call \(J\subseteq E\) a perfect matching of \(S\) if, in \((V,J)\), the degree of each \(v\in S\) is equal to 1 and the degree of each \(v\in V\setminus S\) is equal to 0. Note that a perfect matching of \(S\) is a special case of an \(S\)-join. In graphs with metric weights, we can assume that all \(S\)-joins of minimum weight are perfect matchings.

A closed walk in \(G\) passing through each vertex at least once is called a tour, let \(X\) denote the multiset containing each edge \(e\in E\) as many times as it is traversed by the tour. It is well-known and easy to prove that \((V,X)\) is Eulerian. If \(G\) is a complete graph with metric edge weights and \(F\) is a multiset of edges such that \((V,F)\) is Eulerian, then there is a Hamiltonian cycle \(C\subseteq F\) of weight \(w(C)\leq w(F)\) which can be found using the standard short-cutting procedure [20].

4 Algorithms for metric TSP↩︎

Our algorithms receive in input a prediction \(P\subseteq E\), which is ideally the set of edges of an optimal tour \(X^*\). Notice that in general we allow \(P\) to be any set of edges, in particular \(P\) might induce a disconnected graph, a graph with multiple cycles etc. In the settings where we are given a heatmap \(p\in [0,1]^E\) in input, we simply sample each edge \(e\in E\) independently with probability \(p_e\), and let \(P\) be the set of sampled edges. We remark that \(\mathbb{E}[\eta(P,X^*)]=\eta(p,X^*)\), therefore it is sufficient to upper bound the cost of the produced solution in terms of \(\eta=\eta(P,X^*)\).

4.1 Algorithm [alg:alg1] and proof of Theorem 1↩︎

We describe our algorithm proving Theorem 1. Our algorithm is based on the classical 1.5-approximation algorithm by [14]. First, it constructs a minimum spanning tree (MST) \(T\) on \(G\) which is biased towards edges in the prediction \(P\) in the sense that each edge in \(P\) is treated as if its weight was 0. This can be easily done in near-linear time. Having the spanning tree \(T\), it computes the minimum-weight \(\mathop{\mathrm{odd}}(T)\)-join \(J\) which, in the metric case, is the minimum weight perfect matching of \(\mathop{\mathrm{odd}}(T)\). We compute \(J\) using the classical algorithm [48], [49] with running time2 \(O(n^3)\) treating predicted and not predicted edges equally, i.e., we always count with their original weights \(w\).

The multiset \(T+J\) where edges contained in both \(T\) and \(J\) are taken twice is connected (because \(T\) is a spanning tree) and Eulerian (each \(v\in V\) is contained in an even number of edges in \(T+J\)), since \(J\) is an \(\mathop{\mathrm{odd}}(T)\)-join, i.e., \(\mathop{\mathrm{odd}}(J) = \mathop{\mathrm{odd}}(T)\). Using the classical short-cutting procedure [20], we can construct a Hamiltonian circuit of weight no greater than the weight of \(T+J\) in time \(O(|T+J|)\). See Algorithm [alg:alg1] for the summary.

Figure 1: Example instance of a TSP where the vertices are points on a line. Only the edges of the optimal tour X^* are drawn. In the case with perfect prediction, i.e., P=X^*, Algorithm [alg:alg1] may choose the path from 1 to n as T (there are multiple possibilities), S = \{1, n\} and J=\{e\} contains the edge e connecting n and 1. Then T+J = X^* and no short-cutting is needed.

Input: \(G=(V, E)\) s.t. \(E=\binom{V}{2}\), \(w\colon E\to \mathbb{R}_+\), \(P \subseteq E\) Output: TSP tour over \(G\)
\(T :=\) MST on \(G\) w.r.t. the modified weights \(w'\) \(S:=\) set of odd vertices in \(T\) \(J:=\) min-weight \(S\)-join w.r.t. the original weights \(w\) Output: short-cutting of the Eulerian multiset \(T+J\)

Remark 4. We have to disregard the prediction \(P\) when computing \(J\). If we have computed \(J\) w.r.t. the modified weights \(w'\), i.e., each \(e\in P\) having weight 0 in the style of [24], the approximation ratio of our algorithm would be no better than 2 even with prediction error arbitrarily small, see Appendix 11.2.2.

Remark 5. There is a simple 2-approximation algorithm called double-tree [43], which does not require the costly computation of an \(\mathop{\mathrm{odd}}(T)\)-join \(J\). Instead, it outputs the short-cutting of \(T+T\) which is clearly Eulerian. Unfortunately, if our algorithm used \(T+T\) instead of \(T+J\), its approximation ratio would be no better than 2 even with \(\eta\) approaching 0, see Appendix 11.2.1.

Theorem 1 is implied by the following statement and the fact that each step of Algorithm [alg:alg1] can be performed in near-linear time except for the construction of \(J\) which requires time \(O(n^3)\).

Theorem 6. Let \(G=(V, E)\) be a complete graph on \(n\) vertices with edge weights \(w\colon E\to \mathbb{R}_+\) satisfying triangle inequality. Let \(X^*\) be a TSP tour on \(G\) and \(P \subseteq E\) a prediction with error \(\eta\) with respect to \(X^*\). Then the cost of the tour \(X\) produced by Algorithm [alg:alg1] on \(G\) with prediction \(P\) is at most \(w(X^*) + 2\eta\).

Figure 1 describes the steps of Algorithm [alg:alg1] on a simple example with a perfect prediction, showing that ideally we have \(T \subseteq X^*\), i.e., \(T = X^*\cap T\), and \(J = X^*\setminus T\). In our analysis, we show that prediction errors can make both \(T\) and \(J\) deviate from \(X^*\cap T\) and \(X^*\setminus T\) respectively, but the increase of their weight is proportional to the weight of the mispredicted edges as formulated in the lemmas below. We use the following notation. Given a prediction \(P\subseteq E\) and a tour \(X^*\), we denote \(H^+ = P \setminus X^*\) the set of false positives and \(H^- = X^*\setminus P\) the set of false negatives. We have \(\eta = w(H^-) + w(H^+)\) and \(P = (X^* \setminus H^-) \cup H^+\).

Lemma 1. One has: \[\begin{gather} \tag{1} w(T\setminus P) \leq w(H^-)\text{ and}\\ \tag{2} w(T) \leq w(X^* \cap T) + w(H^+) + w(H^-). \end{gather}\]

Proof. Note that \(P\cup H^- \supseteq X^*\) is a connected graph and \(w'(e) =0\) for any \(e\in P\). Since \(T\) is an MST with respect to \(w'\), we have \[w(T\setminus P) = w'(T) \leq w'(P\cup H^-) = w(H^-).\] This already implies 1 . To prove 2 , we write \[\begin{align} w(T) &= w(T\cap P) + w(T\setminus P)\\ &\leq w(X^*\cap T) + w(H^+) + w(H^-), \end{align}\] where the inequality follows from \(T\cap P \subseteq (T\cap X^*) \cup (T\cap H^+) \subseteq (T\cap X^*) \cup H^+\) and 1 . ◻

Lemma 2. One has: \[w(J) \leq w(X^* \setminus T) + w(H^+) + w(H^-).\]

Proof. We show that, for \(S=\mathop{\mathrm{odd}}(T)\), there is an \(S\)-join, namely \(J' := X^*\Delta T\), that satisfies the desired bound. First, we prove that \(J'\) is an \(S\)-join, i.e., equivalently that \(T+J'\) has all degrees even. We can write \[\begin{align} T + J' &= \big((T\cap X^*) \cup (T\setminus X^*)\big) + \big((X^* \setminus T) \cup (T \setminus X^*)\big)\\ &= X^* + \big( (T\setminus X^*) + (T\setminus X^*)\big), \end{align}\] because \((T\cap X^*) \cup ( X^* \setminus T) = X^*\). In other words, \(T + J'\) is a sum of the tour \(X^*\) (Eulerian) and \((T \setminus X^*) + (T\setminus X^*)\) (each edge taken twice). Therefore, \(\mathop{\mathrm{odd}}(J') = \mathop{\mathrm{odd}}(T) = S\) and \(J'\) is an \(S\)-join.

Now, it is enough to bound the weight of \(J'\). We have \(w(J') = w(X^* \setminus T) + w(T \setminus X^*)\), where \[\begin{align} w(T \setminus X^*) &= w((T\setminus X^*) \cap P) + w((T \setminus X^*) \setminus P)\\ &\leq w(H^+) + w(T \setminus P) \overset{\eqref{eq:alg1E95TminP}}{\leq} w(H^+)+w(H^-). \end{align}\] The first inequality follows from \((T\setminus X^*) \cap P \subseteq P \setminus X^* = H^+\) and from \((T\setminus X^*) \setminus P \subseteq T\setminus P\). Thus \[w(J) \leq w(J') = w(X^* \setminus T) + w(H^+) + w(H^-).\qedhere\] ◻

Proof of Theorem 6. Lemmas 1 and 2 imply \[w(T) + w(J) \leq w(X^*) + 2w(H^+) + 2w(H^-).\] Short-cutting of \(T+J\) can only decrease the weight of the resulting tour. ◻

4.2 Near-linear time algorithm for metric TSP↩︎

Finding the min-weight perfect matching \(J\) is the most computationally intensive step in Algorithm [alg:alg1]. An obvious way to speed-up the algorithm is to replace this step with a 2-approximation algorithm by [16], which runs in near-linear time. Unfortunately, this does not lead to approximation ratio smaller than 1.5 even with very small \(\eta\). An example similar to Remark 5 can be found in Appendix 11.2.3. Here, we focus on the points in the analysis of the previous section which would fail, in order to motivate the steps performed by our next algorithm.

Consider the example in Figure 1. We have \(n\) points on the line and a perfect prediction \(P\) of the optimal tour \(X^*\) and a spanning tree \(T\) that omits the heaviest edge \(e\in X^*\) such that \(w(e) = w(X^*)/2\). Then, losing a factor of \(2\) in the bound of Lemma 2 due to the approximation ratio of [16], we would have \(w(T)+w(J)\leq w(X^*\cap T) + 2w(X^*\setminus T) = \frac{3}{2} w(X^*)\), i.e., an 1.5-approximation even with perfect predictions.

Input: \(G=(V, E)\) s.t. \(E=\binom{V}{2}\), \(w\colon E\to \mathbb{R}_+\), \(P \subseteq E\) Output: TSP tour over \(G\)
\(T :=\) MST of \(G\) w.r.t. the modified weights \(w'\) \(S:=\) set of odd vertices in \(T\) Output: short-cutting of the Eulerian multiset \(T+J\)

In order to avoid the previous example, we bias \(T\) towards the heaviest edges in \(P\). In particular, we look for the MST with the signs of the weights of the edges in \(P\) flipped. Intuitively, we are trying to make sure that the heaviest edges in \(P\) are contained in \(T\) and we pay for them only once, while the weight of \(X^*\setminus T\) where we suffer the multiplicative factor of 2 will be small.

Unfortunately, \(X^*\setminus T\) is always non-empty and contains a part of the optimal solution \(X^*\) whose weight we do not want to pay twice. Somewhat surprisingly, we can show that whenever \(|S|>2\) (\(\eta>0\) in such a case), \(w(J)\) can be bounded purely in terms of \(\eta\), see the lemma below. This means that the approximation ratio of [16] will affect only the constant in front of \(\eta\). Fortunately, this is already enough, since finding the exact min-weight perfect matching is trivial with \(|S|=2\) (it is just the edge connecting the two vertices in \(S\)). Our algorithm is summarized in Algorithm [alg:alg2]. All the steps can be performed in near-linear time.

Lemma 3. If \(|S|>2\), then \(w(J) \leq O(\eta)\).

Lemma 3 is the crucial part of our analysis. We bound the weight of \(J\) using an explicit \(\mathop{\mathrm{odd}}(T)\)-join \(J' = X^*\Delta T\). The proof is most difficult when \(\eta\) is relatively small and the most tricky part is in fact accounting for the weight of the lightest edge. We define \(e^*\) as the edge in \(X^*\) with the smallest weight. First, we ignore \(e^*\) and consider \(Y^*=X^*\setminus \{e^*\}\). We partition \(J'\) into parts as in Figure 2 (a), bounding the weight of each part separately, as shown in the figure.

a

Figure 2: No caption. a — Partition of \(J'=X^*\Delta T\) together with the bound on each part. In particular, we have \(w(T\setminus X^*)\leq w(H^+)+w(H^-)\), \(w((X^*\setminus T)\setminus P)\leq w(H^-)\), and \(w((Y^*\setminus T)\cap P)\leq w(T\setminus Y^*)\).

The flipped sings of the weights of the edges in \(P\) are used in the bound \(w((Y^*\setminus T)\cap P)\leq w(T\setminus Y^*)\). However, this bound is not yet sufficient to prove Lemma 3. We need to bound \(w((X^*\setminus T)\cap P)\) instead, and there might be \(e^*\) missing on the left- or right-hand side. We need to consider several cases depending on whether \(e^*\) belongs to \(P\) or not and, if yes, whether it belongs to \(T\).

4.2.1 Analysis of Algorithm [alg:alg2]↩︎

Let \(X^* \subseteq E\) be the edges of an optimal tour of \(G\). Since \(G\) is a complete graph with metric weights, \(X^*\) is a Hamiltonian cycle. Given prediction \(P\subseteq E\), we denote \(P = (X^* \setminus H^-) \cup H^+\), where \(H^-\) and \(H^+\) are the sets of false negatives and false positives. We denote by \(J'= X^*\Delta T\) the reference \(S\)-join, with \(S=\mathop{\mathrm{odd}}(T)\), which we use to bound the weight of \(J\).

Lemma 4. \(J'=X^*\Delta T=(X^* \setminus T) \cup (T\setminus X^*)\) is an \(S\)-join, i.e., its degrees are odd on \(S\) and even on \(V\setminus S\).

Proof. The claim is equivalent to \(T + J'\) having all degrees even. This holds since: \[T+J' = ((T\cap X^*) \cup (T\setminus X^*)) + ((X^*\setminus T) \cup (T\setminus X^*)) = X^* + \big( (T\setminus X^*) + (T\setminus X^*)\big),\] i.e., \(T+J'\) is the union of the tour \(X^*\), where all degrees are \(2\), and \((T \setminus X^*) + (T\setminus X^*)\), where each edge is taken twice. ◻

Lemma 5. One has

  1. \(w(T\setminus P) \leq w(H^-)\)

  2. \(w(T) \leq w(T\cap X^*) + w(H^+) + w(H^-)\).

Proof. All the edges \(e\in P\) have negative \(w'(e)\) while all other edges positive \(w'(e)\). Therefore, while there is an edge in \(P\) which can still be added to \(T\), i.e, some connected component of the graph \((V,P)\) is still disconnected, Kruskal’s algorithm will never add an edge \(e\notin P\) to \(T\). Therefore, \(T\cap P\) is a spanning forest of \((V,P)\) and, since \(X^*\subseteq P\cup H^-\), we know that \((T\cap P) \cup H^-\) is connected. By the minimality of \(T\), we have \[- w(T\cap P) + w(T\setminus P) = w'(T) \leq w'(T\cap P) + w'(H^-) = -w(T\cap P) + w(H^-)\] which implies \(w(T\setminus P) \leq w(H^-)\) – the first statement of the lemma.

As for \(T\cap P\), we have \[T\cap P \subseteq (T\cap (P\cap X^*)) \cup (T\cap (P\setminus X^*)) \subseteq (T\cap X^*) \cup (H^+),\] see Figure 3.

Figure 3: Illustration of Lemma 5

Therefore, the total weight of \(T\) is \[\label{eq:alg295T} w(T) = w(T\cap P) + w(T\setminus P) \leq w(T\cap X^*) + w(H^+) + w(H^-). \qedhere\tag{3}\]  ◻

The following lemma holds for an arbitrary \(S\) but we will need it only for \(|S|=2\).

Lemma 6. One has \[w(J') \leq w(X^* \setminus T) + w(H^+) + w(H^-).\]

Proof. We have \[w(J') = w(X^* \setminus T) + w(T\setminus X^*).\] Since \(T\setminus X^* = ((T\setminus X^*) \cap P) \cup ((T\setminus X^*) \setminus P) \subseteq H^+ \cup (T\setminus P)\), we get \[w(J') \leq w(X^*\setminus T) + w(H^+) + w(T\setminus P) \overset{Lem.\,\ref{lem:alg295T}.\eqref{lem:alg295T:1}}\leq w(X^*\setminus T) + w(H^+) + w(H^-). \qedhere\] ◻

Consider next the case \(|S|>2\). In this case, \(J\) is only a 2-approximation of the optimal \(S\)-join and therefore we can claim only \(w(J)\leq 2w(J')\). Therefore, to prevent loosing factor of 2 on the weight of the edges in \(X^*\), we have to bound \(w(J')\) only in terms of \(H^+\) and \(H^-\). This is proved in the next lemma. If \(|S| > 2\), we have \[w(J') \leq 3w(H^+) + 5w(H^-).\] Note that, when \(|S|>2\), we have \(T \setminus X^* \neq \emptyset\) and at least one of \(H^+\) and \(H^-\) is non-empty. We use the following notation. Fix \(e^* \in X^*\) such that \(w(e^*)\) is minimal over the edges in \(X^*\) and denote \(Y^* = X^* \setminus \{e^*\}\). We will bound the weight of the \(S\)-join \(J'= X^*\Delta T\) piece by piece, as visualized in Figure 2. The weight of \(e^*\) will be bounded by case analysis.

Observation 7. If \(|S| > 2\) and \(e^*\in T\), we have \(|Y^* \setminus T| \geq 2\).

Proof. The only spanning trees contained in the tour \(X^*\) are paths, i.e., they have only two odd vertices. Therefore, if \(|S|>2\), there is \(e\in T\setminus X^*\). Since \(e^*\in T\), we have \(\{e, e^*\} \subseteq T\setminus Y^*\). Finally, observe that \(|Y^*|=|T|\), hence \(|Y^* \setminus T| = |T\setminus Y^*|\geq 2\). ◻

Observation 8. We have

  1. \(w(T\setminus X^*) \leq w(H^+) + w(H^-)\)

  2. \(w((X^*\setminus T)\setminus P) \leq w(H^-)\).

Proof. The first statement follows from \(T\setminus X^* = ((T\setminus X^*) \cap P) \cup ((T \setminus X^*) \setminus P) \subseteq (P \setminus X^*) \cup (T\setminus P),\) the definition of \(H^+\) and Lemma 5.

The second statement follows from \((X^* \setminus T)\setminus P \subseteq X^* \setminus P = H^-\). ◻

Observation 9. We have \[w((Y^*\setminus T)\cap P) \leq w(T\setminus Y^*).\]

Proof. Consider the spanning tree \(T'\) created by adding some edges of \(T\) to \(Y^*\cap P\) (which is a forest). This way, \(T'\setminus T=(Y^*\cap P)\setminus T=(((Y^*\cap T)\cap P) \cup ((Y^*\setminus T)\cap P))\setminus T=(Y^*\setminus T)\cap P\), see also Figure 4.

Figure 4: T and the new spanning tree T' containing Y^*\cap P.

Therefore, it is enough to bound the weight of \(T'\setminus T\). By the minimality of \(T\), we have \(w'(T') \geq w'(T)\) and therefore \(w'(T'\setminus T) \geq w'(T\setminus T')\) by subtracting \(w'(T'\cap T)\) on both sides. Since \(T'\setminus T \subseteq P\), \[\begin{align} w(T'\setminus T) = -w'(T'\setminus T) \leq -w'(T\setminus T') = w((T\setminus T')\cap P) - w((T\setminus T')\setminus P) \leq w(T\setminus Y^*). \end{align}\] The last inequality follows from \(w\) being non-negative and \((T\setminus T')\cap P \subseteq T\setminus Y^*\), see Figure 4. This concludes the proof, since \(T'\setminus T=(Y^*\setminus T)\cap P\). ◻

Proof of Lemma 3. We consider the following cases:

4.2.1.1 Case \(e^*\notin P\).

Here, \(e^*\in H^-\) and therefore \(w(e^*)\leq w(H^-)\). Therefore, we have \[\label{eqn:lem:alg295S4} w((X^*\setminus T)\cap P) = w((Y^*\setminus T)\cap P) \overset{Obs.\,\ref{lem:alg295YTP95copy}}{\leq} w(T\setminus Y^*) \leq w(T\setminus X^*) + w(e^*) \leq w(T\setminus X^*) + w(H^-).\tag{4}\] We get \[\begin{align} w(J') & = w((X^*\setminus T)\setminus P) + w((X^*\setminus T)\cap P) + w(T\setminus X^*)\\ & \overset{Obs.\,\ref{lem:alg295TminX}.\eqref{lem:alg295TminX:2}}{\leq} w(H^-) + w((X^*\setminus T)\cap P) + w(T\setminus X^*)\\ & \overset{\eqref{eqn:lem:alg295S4}}{\leq} w(H^-) + \big(w(T\setminus X^*) + w(H^-)\big) + w(T\setminus X^*)\\ & \overset{Obs.\,\ref{lem:alg295TminX}.\eqref{lem:alg295TminX:1}}{\leq} 2w(H^+) + 4w(H^-). \end{align}\] which implies the statement of the lemma.

4.2.1.2 Case \(e^*\in P\cap T\).

We have \(X^*\setminus T = Y^*\setminus T\) and \(T\setminus Y^* = (T\setminus X^*)\cup\{e^*\}\). We have \[w(X^*\setminus T) = w((X^*\setminus T)\setminus P) + w((Y^*\setminus T)\cap P) \overset{Obs.\,\ref{lem:alg295YTP95copy}}{\leq} w(H^-) + w(T\setminus Y^*) = w(H^-) + w(T\setminus X^*) + w(e^*).\] Since \(e^*\) is the lightest edge in \(X^*\) and \(|X^*\setminus T|=|Y^*\setminus T|\geq 2\) (Observation 7), we have \(w(e^*)\leq \frac{1}{2} w(X^*\setminus T)\). Therefore the previous equation implies \[w(X^*\setminus T) \leq 2(w(X^*\setminus T) - w(e^*)) \leq 2(w(H^-) + w(T\setminus X^*)).\] We get \[w(J') = w(X^*\setminus T) + w(T\setminus X^*) \leq 2w(H^-) + 3w(T\setminus X^*) \overset{Obs.\,\ref{lem:alg295TminX}.\eqref{lem:alg295TminX:1}}{\leq} 3w(H^+) + 5w(H^-)\] which implies the statement of the lemma.

4.2.1.3 Case \(e^*\in P\setminus T\).

First, we show that \(w(e^*)\leq w(T\setminus X^*)\). Since \(e^*\notin T\), there is a unique cycle \(C \subseteq T\cup\{e^*\}\) and, since \(T\) is an MST w.r.t. weights \(w'\), all the edges \(e\in C\) have weight \(w'(e)\leq w'(e^*)\). Note that \(C\setminus X^* \neq \emptyset\). Indeed, both \(C\) and \(X^*\) are cycles and \(|X^*|=n\geq |C|\), hence the only possibility for \(C\setminus X^* = \emptyset\) is that \(C=X^*\). However in the latter case \(|S|=|\mathop{\mathrm{odd}}(T)|=2\), a contradiction. Thus, we can choose \(f\in C\setminus X^*\) and we have \(w'(f) \leq w'(e^*) < 0\) (because \(e^*\in P\)), hence \(w(T\setminus X^*)\geq w(f)\geq w(e^*)\). Therefore, we have \[\begin{align} w((X^*\setminus T)\cap P) & = w((Y^*\setminus T)\cap P) + w(e^*) \overset{Obs.\,\ref{lem:alg295YTP95copy}}{\leq} w(T\setminus Y^*) + w(e^*)\nonumber \\ & \leq 2w(T\setminus X^*) \overset{Obs.\,\ref{lem:alg295TminX}.\eqref{lem:alg295TminX:1}}{\leq} 2w(H^+) + 2w(H^-).\label{eqn:einPminusT} \end{align}\tag{5}\] The second last inequality follows from \(T\setminus Y^*=T\setminus X^*\) (since \(e^*\notin T\)) and \(w(e^*)\leq w(T\setminus X^*)\). Thus \[\begin{align} w(J') &= w((X^*\setminus T)\setminus P) + w((X^*\setminus T)\cap P) + w(T\setminus X^*)\\ & \overset{Obs.\,\ref{lem:alg295TminX}.\eqref{lem:alg295TminX:2}}{\leq} w(H^-)+ w((X^*\setminus T)\cap P) + w(T\setminus X^*)\\ &\overset{\eqref{eqn:einPminusT}}{\leq} w(H^-) + 2w(H^+) + 2w(H^-) + w(T\setminus X^*)\\ & \overset{Obs.\,\ref{lem:alg295TminX}.\eqref{lem:alg295TminX:1}}{\leq} 3w(H^+) + 4w(H^-). \end{align}\] This concludes the proof of the lemma. ◻

Let \(G=(V, E)\) be a complete graph on \(n\) vertices with edge weights \(w\colon E\to \mathbb{R}_+\) satisfying triangle inequality. There is an algorithm running in time \(O(n^2\log n)\) which, receiving a prediction \(P \subseteq E\) with error \(\eta\) with respect to some TSP tour \(X^*\), outputs a TSP tour \(X\) of weight \[w(X) \leq w(X^*) + 7w(H^+) + 11w(H^-).\]

Proof. Algorithm [alg:alg2] returns a shortcutting of the multiset \(T+J\) whose weight is, by triangle inequality, at most \(w(T) + w(J)\).

In case \(|S|=2\), \(J\) is the optimal T-join of the odd vertices in \(T\), i.e, \(w(J)\leq w(J')\). Combining Lemma 5 and Lemma 6 we get \[\begin{align} w(T) + w(J) &\leq w(T) + w(J')\\ &\leq w(T\cap X^*) + w(H^+) + w(H^-) + w(X^*\setminus T) + w(H^+) + w(H^-)\\ &\leq w(X^*) + 2w(H^+) + 2w(H^-). \end{align}\]

If \(|S|>2\), \(J\) is a 2-approximation of the optimal T-join, i.e., \(w(J)\leq 2w(J')\). In this case, we use Lemma 5 and Lemma 3: \[\begin{align} w(T) + w(J) &\leq w(T) + 2w(J')\\ &\leq w(T\cap X^*) + w(H^+) + w(H^-) + 2\big(3w(H^+) + 5w(H^-)\big)\\ &\leq w(X^*) + 7 w(H^+) + 11 w(H^-). \qedhere \end{align}\] ◻

5 Euclidean TSP↩︎

In Euclidean TSP, the input is given as coordinates of the \(n\) vertices of the complete graph \(G\) in the Euclidean plane and the weight of the edge between two vertices \(u,v\in V\) is computed as a Euclidean distance between them. In particular, the size of the input is linear in \(O(n + |P|)\), which is \(O(n)\) for any prediction of reasonable quality. This is much more succinct representation than the vector of edge weights which has \(\Theta(n^2)\) coordinates.

First, we argue that we can find \(T\) in time \(O((n+|P|)\log n)\). To this end we recall the notion of Delaunay triangulation, which is a classical object in Computational Geometry [51]. It can be defined as any triangulation of the Delaunay Graph which has the following characterization.

Proposition 10 (see Theorem 9.6 in [51]). Let \(V\) be a set of points in the plane. Two points \(u,v\in V\) form an edge of the Delaunay graph of \(V\) if and only if there is a closed disk containing \(u\) and \(v\) on its boundary which does not contain any other point of \(V\).

We construct a Delaunay triangulation \(D\) of \(V\) (it has size \(O(n)\) and it can be found in time \(O(n\log n)\)), then we find \(T\) as an MST of \((V, P\cup D)\). It is well known that an Euclidean MST uses only the edges of \(D\) [17]. It is not difficult to show that if we modify the weights of edges in the set \(P\), the MST will use only edges in \(P\cup D\).

Proposition 11. Let \(V\) be a set of \(n\) points in the Euclidean plane, \(G=(V,\binom{V}{2})\) and \(P\subseteq \binom{V}{2}\) with weights \(w'\) such that \(w'(uv) < 0\) for every \(uv\in P\) and \(w'(uv) = \lVert u-v\rVert_2\) for every \(e\in E\setminus P\). Let \(D\subseteq \binom{V}{2}\) be the Delaunay triangulation of \(V\). Then \(D\cup P\) contains an MST \(T\) with respect to \(w'\).

Proof. Consider a fixed MST \(T\) and any edge \(uv=e\in T\). If \(e\in P\cup D\), we are done. Otherwise, we show that \(T\) is not an MST.

By Proposition 10, every closed disc having \(u,v\) on its boundary contains another point of \(V\), since \(uv\notin D\) and therefore it is not contained in the Delaunay Graph of \(V\). Consider a closed disc \(D\) whose diameter is the segment \(uv\) and let \(z\in V\setminus \{u,v\}\) be another point contained in \(D\). We have \(\lVert z-v\rVert_2 < \lVert u-v\rVert_2\) and \(\lVert z-u\rVert_2 < \lVert u-v\rVert_2\). Therefore we have \(w'(uz) < w'(uv)\) and \(w'(vz) < w'(uv)\) regardless whether \(uz\) and \(vz\) belong to \(P\), since the weights of edges in \(P\) are negative. Without loss of generality, assume that \(z\) and \(u\) are in the same component of \(T\setminus uv\). Since \(w'(vz) < w'(uv)\), \((T\setminus\{uv\})\cup\{vz\}\) is a spanning tree of a smaller weight than \(T\). ◻

Finally, [18] show that a \((1+\epsilon)\)-approximation of the min-weight perfect Euclidean matching can be found in time \(O(\epsilon^{-3} n\log^6 n)\). We find \(J\) using their algorithm with \(\epsilon=2\). This way, each step of Algorithm [alg:alg2] can be implemented in time \(O((n+|P|) \mathop{\mathrm{polylog}}n)\) for Euclidean TSP.

6 Graphical TSP↩︎

In graphical TSP, the optimal TSP tour may traverse some edges twice unlike in metric TSP. This means that knowing the set of edges \(F\) used by the optimal tour, there is still a non-trivial step needed to identify which edges need to be traversed twice to construct the actual tour. Consider the example in Figure 5: the underlying set \(F\) of the optimal tour contains all edges drawn in the picture regardless of their color. In order to transform \(F\) into a tour, we need to perform a costly operation: compute the optimal T-join of the odd vertices in \((V,F)\) – edges drawn both black and orange in Figure 5 which will be traversed twice in the resulting tour. Turing \(F\) into an optimal solution requires computing an optimal \(\mathop{\mathrm{odd}}(F)\)-join which is computationally demanding.

Figure 5: Solution of a graphical TSP. Only the edges used by the optimal TSP tour are drawn, you can imagine all the other edges to have a very large weight or be missing, since triangle inequality does not necessary hold in graphical TSP. The tour can be decomposed as X^* = T + J, where the edges of the spanning tree T are drawn black, the edges of the T-join J are drawn orange, and the edges drawn both black and orange are traversed twice by the tour.

In order to achieve near-linear running time, we need the help of the prediction when searching for the T-join. Therefore we require the prediction \(P\) to be a multiset containing the information on how many times is each edge traversed and we define the prediction error as in Equation ?? .

Our algorithm for graphical TSP is summarized in Algorithm [alg:alg3]. Similarly to Algorithm [alg:alg1], it finds an MST \(T\) biased towards edges in \(P\) (the weight of each \(e\in P\) is set to 0). Then, it finds a 2-approximate \(\mathop{\mathrm{odd}}(T)\)-join \(J\) using the algorithm by [16] which runs in time \(O(m\log n)\), where \(m=|E|\) is the number of edges in the input graph, biased towards the edges in \(P-T\), i.e., the edges in \(P\) not used by \(T\) or appearing in \(P\) more than once have weight 0.

Ideally, we would have a perfect prediction \(P=X^*= T+J\) as in Figure 5 and \(P-T = X^*-T\) would be used as a prediction for finding \(J\). In our analysis, we again consider a reference \(\mathop{\mathrm{odd}}(T)\)-join \(J'=X^*\Delta T\). Our crucial points are that the weight of \(P-T\) diverges from the ideal \(X^*-T\) by at most \(\eta\), while the weight of the unpredicted edges in \((X^*-T) - (P-T)\) is bounded by \(\eta\), see Figure 6 for a summary of our bounds. Note that here we consider error \(\eta\) w.r.t. to the tour \(X^*\) not w.r.t. the optimal T-join of \(T\). The key observation is that we loose factor of 2 only for the edges in \(J' - (P-T)\) whose total weight is \(O(\eta)\), while each edge in \(P-T\) is taken at most once.

Remark 12. [24] proposed an algorithm with predictions for finding an S-join. We cannot use their analysis since it would provide bounds in terms of the prediction error w.r.t. an optimal \(\mathop{\mathrm{odd}}(T)\)-join, while we need a bound in terms of the error \(\eta\) w.r.t. \(X^*\) which may be very different. Consider the following situation: \(X^* = T^* + J^*\) and \(P = T + J^*\), i.e., the edges in \(P-T \subseteq X^*\) do not contribute to \(\eta\). However, as a prediction of an \(\mathop{\mathrm{odd}}(T)\)-join it can be completely wrong, being an \(\mathop{\mathrm{odd}}(T^*)\)-join of a different tree \(T^*\).

Figure 6: Bounding the weight of the reference T-join J'. Shows the bounds on the weight of each area highlighted in the picture, namely w((X^*-T) - (P-T)) \leq \eta, w((T-X^*) - (P-T))\leq \eta, and w(P-T) \leq w(X^*-T)+\eta.

Input: \(G=(V, E)\), \(w\colon E\to \mathbb{R}_+\), multiset \(P\) Output: TSP tour over \(G\)
\(T :=\) MST on \(G\) w.r.t. \(w'\) \(S:=\) set of odd vertices in \(T\) \(J:=\) 2-approximate T-join of \(S\) w.r.t. to \(w''\) Output: short-cutting of the Eulerian multiset \(T+J\)

Interestingly, Algorithm [alg:alg1] can be used for graphical TSP as stated, receiving only the prediction \(P\) about the ground set of the optimal tour \(X^*\). In this case, its running time will be \(O(m\log n) + O(|S|^3)\), where the number \(|S|\) of the odd vertices in \(T\) might be as large as \(n\). Details can be found in Section 10 in the Appendix.

6.1 Analysis of Algorithm [alg:alg3]↩︎

We denote \(\bar X^*\) the multiset of edges, where each edge is contained in \(\bar X^*\) as many times as it is traversed by the optimal tour. On the other hand, we denote \(X^*\) the ground set of \(\bar X^*\) containing all edges which are traversed by the optimal tour at least once.

Lemma 7. \[w(T) \leq w(T\cap X^*) + \eta.\]

Proof. Note that \(P\cup H^- \supseteq X^*\) is a connected graph and its modified weight is equal to \(w'(P) + w'(H^-) = w'(H^-) = w(H^-)\) because \(w'(e)=0\) for any \(e\in P\). Since \(T\) is an MST w.r.t. \(w'\), we have \(w'(T)\leq w'(P\cup H^-) \leq w(H^-)\). We can write \[w(T) = w(T\cap P) + w(T\setminus P) \leq w(X^*\cap T) + w(H^+) + w(H^-),\] where the inequality follows from \(T\cap P \subseteq (T\cap X^*) \cup (T\cap H^+) \subseteq (T\cap X^*) \cup H^+\) and \(w(T\setminus P) = w'(T) \leq w(H^-)\). ◻

We will also consider an auxiliary \(\mathop{\mathrm{odd}}(T)\)-join \(J' = (T\setminus \bar X^*) + (\bar X^* - T)\). In the following observations, we bound the weight of its parts as in Figure 7.

Figure 7: Parts of J' and the bounds on their weight.

Observation 13. We have \[w''(\bar X^* - T) = w((\bar X^* - T) - (P-T)) \leq w(H^-).\]

Proof. We claim that \[\label{eq:alg395XTPT1} X^*-T \subseteq (P-T) + H^-.\tag{6}\] To see this inclusion, we write the multiplicity of every edge \(e\in X^*-T\) in the left-hand side of 6 as \[\min\{ m_{X^*}(e) - m_T(e), m_P(e)\} \leq m_P(e) + m_{H^-} - m_T(e) \leq m_{P-T}(e) + m_{H^-}.\] Now, having proved 6 , we can write \[w((X^*-T) - (P-T)) = w''(X^*-T) \leq w''(P-T) + w''(H^-) \leq w(H^-),\] because \(w''(P-T)=0\). ◻

Observation 14. We have \[w''(T-X^*) = w((T-X^*) - (P-T)) \leq \eta.\]

Proof. We can write \(T = (T\cap X^*) + (T - X^*)\). Lemma 7 then implies \(w(T - X^*) \leq \eta\). ◻

Observation 15. We have \[w(P-T) \leq w(X^*-T) + w(H^+).\]

Proof. We can write \[P-T = ((P\cap X^*) + (P-X^*)) - T \subseteq ((P \cap X^*) - T) + (P-X^*) \subseteq (X^* - T) + H^+.\] Therefore, we have \(w(P-T) \leq w(X^*-T) + w(H^+)\). ◻

Let \(G=(V, E)\) be a graph on \(n\) vertices and \(m\) edges with weights \(w\colon E\to \mathbb{R}_+\). Let \(X^*\) be a TSP tour on \(G\) and \(P\) a prediction with error \(\eta\) with respect to \(X^*\). Then the cost of the tour \(X\) produced by Algorithm [alg:alg3] on \(G\) with prediction \(P\) is at most \(w(X^*) + 4\eta\).

Proof. We know that \(J\) is a \(S\)-join, \(S=\mathop{\mathrm{odd}}(T)\), such that \(w''(J) \leq 2w''(J')\) for any \(S\)-join \(J'\). We bound the weight of \(J\) by exposing a \(S\)-join \(J'\) with a small weight. First, we show that \(J' = (T - \bar X^*) + (\bar X^* - T)\) is a \(S\)-join. We can write \[\begin{align} T + J' &= \big((T - \bar X^*) + (T\cap \bar X^*)\big) + \big( (T- \bar X^*) + (\bar X^* - T) \big)\\ &= \big( (T - \bar X^*) + (T - \bar X^*)\big) + \big( (T\cap \bar X^*) + (\bar X^* - T) \big)\\ &= \big( (T - \bar X^*) + (T - \bar X^*)\big) + \bar X^*. \end{align}\] Since \(\bar X^*\) has all degrees even and each edge in \(T - \bar X^*\) is doubled, we have that all the degrees in \(T+J'\) are even, hence \(J'\) is an \(S\)-join.

The weight of the resulting TSP tour is at most \[\begin{align} w(T) + w(J) &\leq w(T) + w''(J) + w(P-T) \leq (w(X^*\cap T) + \eta) + 2w''(J') + w(P-T), \end{align}\] where the first inequality holds because \(J\) is a set and \(w(J) = w''(J) + w(J\cap (P-T))\), and the last inequality follows from Lemma 7 and the approximation guarantee on \(J\). By Observations 13 and 14, we have \[w''(J') = w''(T - \bar X^*)+w''(\bar X^*-T)\leq \eta + w(H^-).\] By Observation 15, we have \(w(P-T)\leq w(X^*-T) + w(H^+)\). Summarizing, we get \[w(T) + w(J) \leq \big(w(X^*\cap T) + \eta\big) + 2\big(\eta+w(H^-)\big) +w(X^*-T) + w(H^+) \leq w(X^*) + 4\eta. \qedhere\] ◻

7 Lower bound: linear dependence on \(\boldsymbol{\eta}\)↩︎

Algorithm [alg:alg1] has approximation ratio \(1+2\frac{\eta}{\mathop{\mathrm{OPT}}}\) where \(\mathop{\mathrm{OPT}}\) denotes the cost of an optimal solution. We next show that a linear dependence on \(\eta/\mathop{\mathrm{OPT}}\) is needed (though possibly with a factor smaller than the \(2\) that we get). The proof idea is that otherwise one could use such a learning-augmented algorithm for TSP to develop a too good approximation algorithm for TSP (without predictions).

Theorem 16. Assuming P\(\neq\)NP, there exists no polynomial-time learning-augmented algorithm for TSP with approximation factor smaller than \(1+\frac{1}{122}\frac{\eta}{\mathop{\mathrm{OPT}}}\).

Proof. Let us assume by contradiction that we are given a learning-augmented algorithm for TSP with approximation factor \(1+\alpha\frac{\eta}{\mathop{\mathrm{OPT}}}\), for some constant \(\alpha\in (0,\frac{1}{122})\). We show how to use it to construct a polynomial-time algorithm for TSP (without predictions) with approximation factor strictly smaller than \(\frac{123}{122}\). Assuming P\(\neq\)NP, the latter algorithm is not possible [52].

Let \(G\) be an input instance of TSP (with weights \(w\)), with optimal value \(\mathop{\mathrm{OPT}}_G\). The TSP algorithm (without predictions) works as follows. It guesses a value \(X\) so that \(\mathop{\mathrm{OPT}}_G\leq X\leq (1+\varepsilon)\mathop{\mathrm{OPT}}_G\), where \(\varepsilon>0\) is a sufficiently small constant depending on \(\frac{1}{122}-\alpha\). This can be done by, e.g., computing a \(2\)-approximation \(X'\) of \(\mathop{\mathrm{OPT}}_G\), and then considering as candidate values of \(X\) all the powers of \((1+\varepsilon)\) between \(X'/2\) and \((1+\varepsilon)X'\). At least one such value of \(X\) satisfies the claim, and we run the rest of the algorithm for all the candidate \(X\) (returning at the end the best solution obtained). Let \(Y := \frac{1-\alpha}{\alpha} X\). Then the algorithm picks an arbitrary node \(v_0 \in G\), and creates a new graph \(G'\) by adding to \(G\) a new node \(s\) and edges between \(s\) and all other nodes with weights \(w(s, u) = \frac{Y}{2} + w(v_0,u)\). It is easy to check that the optimal value \(\mathop{\mathrm{OPT}}_{G'}\) of the TSP instance on \(G'\) (with weights \(w\)) satisfies \(X+Y\geq\mathop{\mathrm{OPT}}_{G'} \geq\frac{1}{1+\varepsilon}(X+Y)\). Maybe more details? Then the algorithm guesses what is the next node after \(v_0\) in an optimal TSP tour in \(G\) (there are \(n-1\) choices to check), let’s call that guess \(v_1\). The algorithm creates a prediction consisting of only two edges \((v_0, s)\) and \((s, v_1)\), and calls the hypothesized learning-augmented algorithm on \(G'\) and that prediction. We claim that, in the iteration in which the guess of \(v_1\) was correct, the prediction error is \(\eta \leq X - w(v_0, v_1) \leqslant X\). Therefore the learning-augmented algorithm returns a solution of cost \(APX_{G'}\leq \mathop{\mathrm{OPT}}_{G'}+\alpha X\). By short-cutting node \(s\) from that solution we obtain a solution for \(G\) of cost at most \[APX_{G'}-Y\leq \mathop{\mathrm{OPT}}_{G'}+\alpha X-Y\leq (1+\alpha)X\leq (1+\varepsilon)(1+\alpha)\mathop{\mathrm{OPT}}_G.\] Altogether we obtain a polynomial-time algorithm for TSP (without predictions) with approximation factor \((1+\varepsilon)(1+\alpha)<\frac{123}{122}\) for a sufficiently small constant \(\varepsilon>0\), a contradiction. ◻

We remark that by a similar construction as in the proof of Theorem 16, one can argue that a substantial improvement of the dependence on \(\eta/\mathop{\mathrm{OPT}}\) in the approximation factor is very difficult. For example, a learning-augmented algorithm for TSP with approximation factor \(1+0.49\frac{\eta}{\mathop{\mathrm{OPT}}}\) would imply a \(1.49+O(\varepsilon)\) approximation for TSP. The latter result would be a breakthrough in approximation algorithms given that only recently the \(1.5\) barrier was overcome and the best known algorithm has approximation ratio \(1.5-10^{-36}\) [45].

In Appendix 11, we provide further examples showing the tightness of our analysis and counterexamples motivating the design of our algorithms.

8 Empirical results↩︎

In this section, we present empirical results that support our theoretical approach. At a high level, we consider probability matrices (heatmaps) obtained from different sources (neural predictors, non-neural predictors, and synthetic constructions) and use them as input to our algorithm. We then evaluate whether this allows us to improve upon standard baselines in terms of optimality gap. Here, we provide a high-level overview of our experimental results; full details are deferred to Appendix 12.

8.0.0.1 The dataset.

We evaluate our model on three different datasets. Dataset \(\mathcal{U}\) is the test set of the well-known ML4CO benchmark [53]. The dataset consists of instances sampled uniformly from the square \([0,1]^2\) and contains instances of four different sizes: \(1280\) instances for each of \(n \in \{50,100\}\) and \(128\) instances for each of \(n \in \{500,1000\}\). Dataset \(\mathcal{T}_E\) contains 53 Euclidean 2D TSPLIB [54] instances with up to 1300 nodes. Finally, dataset \(\mathcal{T}_M\) contains 15 metric non-Euclidean instances from TSPLIB. For all instances, we obtain ground-truth optimal tour lengths using Concorde [5].

8.0.0.2 Data and code availability.

All instances used in our experiments, together with the corresponding predictions, are available on Zenodo.3 The code for reproducing our results and implementing the main algorithm is available on GitHub.4

8.0.0.3 Predictions.

We evaluate several types of predictors (Details are provided in Section 12.2). Among the Predictors from NNs we use the predictions from [3] (GNN4CO), which combines a graph neural network encoder with an autoregressive decoder that sequentially builds a tour, [55] (GNN-GLS), which predicts for each edge its regret, i.e., the cost of enforcing that edge relative to an optimal solution, and [56] (DIFUSCO), a diffusion-based graph model designed to generate high-quality feasible TSP solutions. We include SoftDist [12], a non-neural probabilistic baseline where, given a weighted graph, edge probabilities are defined as \(p_{ij} = \frac{e^{{-w(ij)}/{\tau}}}{\sum_{k \neq i} e^{{-w(ik)}/{\tau}}}\), with temperature parameter \(\tau\) set with guidance from the original paper. Finally, we evaluate a Synthetic Predictor (SP), constructed by applying perturbation to the optimal solution \(X^*\). The noise is governed by the parameter \(\varepsilon\).

8.0.0.4 Baselines.

Since our approach is largely inspired by Christofides’ method, we naturally include Christofides’ algorithm (frequently abbreviated as CHR) as a baseline. We evaluate the performance of our proposed algorithm against several baseline solution search techniques commonly employed to leverage neural heatmaps [26], [55], [56]. We implement two greedy variants: G1 builds a Hamiltonian cycle incrementally by starting from an arbitrary node and repeatedly adding the unvisited node with the maximum score \(q(e)\); G2 follows a greedy edge-selection strategy, adding edges in decreasing order of \(q(e)\) provided they do not create a subcycle or a node with degree \(3\), until the tour is complete. We also evaluate a beam search (BS), which explores multiple candidate tours in parallel by maintaining the top-\(k\) partial paths at each construction step

8.0.0.5 Algorithm [alg:alg1] vs \(\text{CHR}^+\).

To derive the edge subset \(P\) for Algorithm [alg:alg1], we evaluate two strategies: sampling \(k\) edges (Alg1, faithfully representing Algorithm [alg:alg1]), selecting the \(k\) edges with the highest probabilities (Alg1Top). Furthermore, we test a modified weighting approach, where we set \(w'(e) = w(e)(1 - q(e))\), which we denote as \(\text{CHR}^+\). We set \(k=n\), using 30 samples for Alg1 to account for stochasticity. Figure 14 (Appendix 12) shows that \(\text{CHR}^+\) consistently achieves superior performance; thus, we adopt it as our primary decoding strategy. More details can be found in Appendix 12.3.

8.0.0.6 Our algorithm behaves smoothly as the prediction error decreases.

To control the prediction error, we use SP as the predictor, with \(\varepsilon \in [0, 1]\). We first observe that this type of prediction, as expected, performs very poorly with greedy decoding, and hence, comparison is not made in this case (See Appendix 12.4). To study the behavior of our algorithm relative to Christofides, we run the full pipeline for \(n = 500\) on the entire dataset. Figure 8 demonstrates that our algorithm exhibits smooth behavior as the prediction error decreases, consistently improving upon CHR until the error reaches \(\sim \varepsilon = 0.25\). Details on this experiment can be found in Appendix 12.4.

Figure 8: Optimality gap (the lower the better) of Christofides and our algorithm (\text{CHR}^+) on the instances of our dataset with n = 500. We report the average percentage gap, with the shaded regions representing \pm standard deviation.

8.0.0.7 Comparison of different solution search strategies with different predictors.

Table 1 summarizes performance on dataset \(\mathcal{U}\) via optimality gaps relative to Christofides. The discrepancy with the original DIFUSCO results (Figure 9) likely stems from inference-time configurations, such as graph sparsification, which were disabled in our setup. Notably, \(\text{CHR}^+\) is the only strategy that effectively exploits predicted heatmaps to consistently outperform the Christofides baseline. In contrast, G1, G2, and BS fail to yield systematic improvements. These trends remain consistent across TSPLIB instances, both Euclidean and non-Euclidean (Table 2 and Table 3). See Appendix 12.5 for further details.

Figure 9: Visual representation of the performances of different solution search methods on DIFUSCO: Average percentage gap.

8.0.0.8 2-opt improvement.

To further refine the solutions, we apply the 2-opt local search heuristic as a post-processing step, a standard practice for enhancing tour quality [55], [56]; All the details are provided in Appendix 12.6. Our results demonstrate that \(\text{CHR}^+\) remains the superior method while introducing negligible computational overhead compared to CHR. This efficiency is evidenced by the average runtimes reported in Table 1 and the comparable number of 2-opt swaps required to reach local optimality, as recorded in Table 4.

9 Conclusions↩︎

We introduce the first learning-augmented approximation algorithm for TSP. Our algorithm converts any edge heatmap, i.e., a vector of probabilities of each edge to belong to an optimal solution, to a feasible TSP tour of weight \(\leq \mathop{\mathrm{OPT}}+ 2\eta\), where \(\eta\) denotes the L1 distance between the heatmap and some optimal tour of weight \(\mathop{\mathrm{OPT}}\). As shown in our empirical results, our approach utilizes heatmaps more effectively than previous works. Moreover, its approximation performance improves smoothly with increasing accuracy of the provided heatmap, underscoring the potential for further advancements in high-quality heatmap generation models.

Acknowledgements↩︎

The work of E. Vercesi has been supported by the Swiss National Science Foundation (SNSF) project 200021-212929 / 1 “Computational methods for integrality gaps analysis”. The work of F. Grandoni has been partially supported by the SNSF projects 200021-20073 and 200021-236706.

10 Analysis of Algorithm [alg:alg1] in the setting of graphical TSP↩︎

We analyze Algorithm [alg:alg1] in the graphical TSP setting and show that it satisfies the same guarantees as in metric TSP setting, i.e., Theorem [alg:alg1]. Compared to Algorithm [alg:alg3], it does not require predicting multiplicities of edges in the optimal tour \(\bar X^*\). Algorithm [alg:alg1] receives only a prediction \(P\) of the support set \(X^*\) of edges used by \(\bar X^*\) at least once. On the other hand, the running time of Algorithm [alg:alg1] is \(O(n^3)\) compared to the near-linear running time of Algorithm [alg:alg3].

Input: graph \(G=(V, E)\), weights \(w\colon E\to \mathbb{R}_+\), prediction \(P \subseteq E\) Output: TSP tour over \(G\)
find \(T :=\) minimum spanning tree on \(G\) w.r.t. modified weights \(w'\) \(S:=\) set of odd vertices in \(T\) \(J:= S\)-join of \(S\) with minimum weight w.r.t. to the original weights \(w\) output a shortcutting of the Eulerian multiset \(T+J\)

10.0.0.1 Notation:

For an arbitrary optimal tour \(\bar X^*\), we denote by \(X^* \subseteq E\) the support of \(\bar X^*\), i.e., the set of edges appearing in \(\bar X^*\) at least once. Notice that \(X^*\) is connected and \(\bar X^*\) is Eulerian. Given a prediction \(P\subseteq E\), we write \(P = (X^* \setminus H^-) \cup H^+\), where \(H^-\) and \(H^+\) are the sets of false negatives and false positives. Notice that \(\eta=w(H^-)+w(H^+)\).

Theorem 17. Let \(G=(V, E)\) be a graph on \(n\) vertices with edge weights \(w\colon E\to \mathbb{R}_+\). There is an algorithm running in time \(O(n^3)\) which, receiving a prediction \(P \subseteq E\) with error \(\eta\) with respect to some TSP tour \(X^*\), finds a TSP tour \(X\) of weight \[w(X) \leq w(X^*) + 2\eta.\]

Proof. We will show that \(w(T) + w(J) \leq w(\bar X^*) + 2w(H^-) + 2w(H^+)\). By triangle inequality, the weight of the final shortcutting can be only smaller.

We start by bounding \(w(T)\). First, note that \(P\cup H^- \supseteq X^*\) is a connected graph and its modified weight is equal to \(w'(P) + w'(H^-) = w'(H^-) = w(H^-)\) because \(w'(e)=0\) for any \(e\in P\). Since \(T\) is an MST w.r.t. \(w'\), we have \(w'(T)\leq w'(P\cup H^-) \leq w(H^-)\). We can write \[\label{eq:alg195T} w(T) = w(T\cap P) + w(T\setminus P) \leq w(X^*\cap T) + w(H^+) + w(H^-),\tag{7}\] where the inequality follows from \(T\cap P \subseteq (T\cap X^*) \cup (T\cap H^+) \subseteq (T\cap X^*) \cup H^+\) and \[\label{eq:alg195TminP} w(T\setminus P) = w'(T) \leq w(H^-).\tag{8}\]

Now, we bound \(w(J)\). Instead of \(J\), we consider the weight of \(J' := (\bar X^* - T) + (T \setminus X^*)\) which is also a \(S\)-join, \(S=\mathop{\mathrm{odd}}(T)\), and therefore \(w(J)\leq w(J')\) by the optimality of \(J\). Notice that \(\bar X^* - T\) contains all the edges in \(\bar X^*\) not contained in \(T\) with their multiplicity, and all the edges in \(\hat{X}^*\) with multiplicity higher than 1 which are also contained in \(T\) with their multiplicity decreased by 1. In particular, we have \(\bar X^* = (\bar X^* - T) + (X^* \cap T)\). To show that \(J'\) is an \(S\)-join, we equivalently prove that that \(T+J'\) has all degrees even. We can write \[T+J' = \big((T\cap X^*) + (T\setminus X^*)\big) + \big((\bar X^* - T) + (T \setminus X^*)\big) = \bar X^* + \big( (T\setminus X^*) + (T\setminus X^*)\big),\] because \((T\cap X^*) + (\bar X^* - T) = \bar X^*\). In other words, \(T + J'\) is a sum of the tour \(\bar X^*\), that has all even degrees, and of \((T \setminus X^*) + (T\setminus X^*)\), where each edge is taken twice.

We have \(w(J') = w(\bar X^* - T) + w(T \setminus X^*)\), where \[w(T \setminus X^*) = w((T\setminus X^*) \cap P) + w((T \setminus X^*) \setminus P) \leq w(H^+) + w(T \setminus P).\] The last inequality follows from \((T\setminus X^*) \cap P \subseteq P \setminus X^* = H^+\) and \((T\setminus X^*) \setminus P \subseteq T\setminus P\). We have \[\begin{gather} \label{eq:alg195J} w(J) \leq w(J') = w(\bar X^* - T)+w(T\setminus X^*) \leq w(\bar X^* - T) + w(H^+) +w(T\setminus P) \\ \overset{\eqref{eq:alg195TminP}}{\leq} w(\bar X^* - T) + w(H^+) + w(H^-). \end{gather}\tag{9}\] Since \(\bar X^* = (X^*\cap T) + (\bar X^* - T)\), equations 7 and 9 imply \[w(T) + w(J) \leq w(\bar X^*) + 2w(H^+) + 2w(H^-).\qedhere\] ◻

11 Tightness of our analysis and further counterexamples↩︎

Here we describe construction showing the tightness of our results and our analysis.

11.1 Tightness of our analysis↩︎

Here we show that our analysis of Algorithm [alg:alg1] is tight, in the sense that the coefficient \(2\) in front of the prediction error \(\eta\) cannot be improved for the given algorithm. We provide two examples: one with false positives and one with false negatives. These two examples can be combined in a single input instance with the desired weight of false positives and false negatives. Note that Algorithm [alg:alg1] satisfies the same approximation guarantees in both metric TSP and graphical TSP setting. In what follows, we first describe an input instance of graphical TSP which, by taking the metric closure of the proposed graph, gives an input instance of metric TSP. We describe the final outputs of Algorithm [alg:alg1] in both setting, as they will differ slightly in the final short-cutting step.

Figure 10: Tightness of our analysis with respect to the dependence on false positives. Path from b to c as well as the path from b to d has weight M\gg 1. The prediction P=X^*\cup \{ab\}, i.e., there is only one false positive H^+=\{ab\} and we have \eta=w(ab)=1.

11.1.0.1 Prediction with false positives.

Figure 10 describes a bad example for the dependence on false positives. Given prediction \(P=X^*\cup\{ab\}\), the set of thick orange edges is an MST with respect to the weights \(w'\) in Algorithm [alg:alg1]. In the following steps, Algorithm [alg:alg1] identifies \(S=\{a,b,c,d\}\) as the set of odd vertices and the edges \(J\) drawn with dark-blue dashed lines denote a min-weight \(S\)-join.

After short-cutting, the resulting tour in the graphical TSP setting will take the edge \(ab\), then the path from \(b\) to \(c\) of length \(M\), then taking edge \(cd\), then path from \(d\) to \(b\) of length \(M\), and then again edge \(ab\).

In the metric TSP setting, we take the edge \(ab\), then the path from \(b\) to \(c\) of length \(M\), then taking edge \(cd\), then path from \(d\) to \(v\) and finally the edge \(va\). This forms a Hamiltonian cycle of the same weight as the graphical tour, since the weight of the edge \(va\) in the metric closure is equal to the weight of the path \(v,b,a\).

Therefore, in both cases the weight of the tour produced by Algorithm [alg:alg1] will be \[w(X) = 1 + M + 2 + M + 1 = 2M + 2 + 2 = w(X^*) + 2w(H^+) = w(X^*) + 2\eta,\] showing that the approximation guarantee for Algorithm [alg:alg1] as stated in theorems 1 and 17 is tight.

Figure 11: Tightness of our analysis with respect to the dependence on false negatives. The optimal tour X^* contains solid and dashed black edges. The prediction P contains only sold black edges, there are no false positives. Each of the k blocks contains five edges of length 1 and one edge of length 2. The prediction error is \eta=k+1.

11.1.0.2 Prediction with false negatives.

Figure 11 describes a tight example for the dependence on false negatives. It shows an input where Algorithm [alg:alg1] finds a tour with weight \(w(X) \geq w(X^*) + 2\frac{k}{k+1}\eta\), where \(2\frac{k}{k+1}\) can be arbitrarily close to 2 as \(k\) can be chosen as large as roughly \(n/10\). The graph \(G\) in Figure 11 contains \(k\) blocks, each containing 5 edges of length 1 and a single edge of length 2. The optimal tour \(X^*\) uses 4 edges of unit length in each block and its total length is \(M + 4k + 3\). The prediction error is \(\eta = k+1\): one edge of unit weight is missing in each block and another such edge on the right-hand side. On the other hand, Algorithm [alg:alg1] finds an MST \(T\) (fat orange) and an \(S\)-join for \(S=\mathop{\mathrm{odd}}(T)\) (fat dashed blue), using altogether 4 edges of unit length and one edge of length 2 in each block. In total, it produces a tour of length \[w(X) = M + k({\textcolor{orange}4} + {\textcolor{blue}2}) + {\textcolor{orange}2} + {\textcolor{blue}1} = w(X^*) + 2k = w(X^*) + 2\frac{k}{k+1}\eta.\] This shows that the approximation guarantee for Algorithm [alg:alg1] as stated in theorems 1 and 17 is tight up to the factor \(\frac{k}{k+1}\) which can be arbitrarily close to 1 as \(k\) increases.

11.2 Justification of the steps performed by our algorithms↩︎

11.2.1 Doubling \(\boldsymbol{T}\) instead of \(\boldsymbol{\mathop{\mathrm{odd}}(T)}\)-join↩︎

The example in Figure 12 shows that if, in Algorithm [alg:alg1], we take \(J=T\) instead of \(J= \mathop{\mathrm{odd}}(T)\)-join which is easy to find and inspired by the classical minimum spanning tree heuristic for TSP, see [20], the resulting algorithm would not have smooth dependence on \(\eta\). In particular, \(\eta = 2\) (there are two false negative edges of weight \(1\)) and the tour produced by the algorithm would have weight \(w(X) = 2M +2M -3 = 2w(X^*) -3\) can be chosen arbitrarily small.

Figure 12: Bad example for the doubling-tree-inspired variant. Both the left-hand side and the right-hand side half of the optimal tour X^* have weight M. The short-cutting edges have the same length as the shortest path between their endpoints.

11.2.2 \(\boldsymbol{J}\) has to be computed with respect to the original weights↩︎

If we computed both \(T\) and \(J\) with respect to the weight \(w'\), our algorithm would be equivalent to running Christofides algorithm with the weight of predicted edges set to zero, which is an approach proposed by [24] in their meta-algorithm. This, however does not work. Consider the example in Figure 12. There, the cheapest \(\mathop{\mathrm{odd}}(T)\)-join with respect to the weights \(w'\) would be \(T\) itself with \(w'(T)=0\). At the end, we would receive a tour \(X\) with weight \(w(X) = 2w(X^*)-3\) as argued in Section 11.2.1.

11.2.3 Optimal \(\boldsymbol{\mathop{\mathrm{odd}}(T)}\)-join in Algorihtm [alg:alg1] cannot be replaced by a 2-approximation↩︎

In Figure 13, we show an input graph which shows that Algorithm [alg:alg1], if using a 2-approximate \(\mathop{\mathrm{odd}}(T)\)-join instead of the optimal one, would achieve approximation ratio close to 1.5 even with arbitrary small error. In the picture, \(T\) is an MST and has five odd vertices in the left-hand side as well as in the right-hand side. Therefore, the optimal \(\mathop{\mathrm{odd}}(T)\)-join has to contain an edge (or a path) of length \(M\) connecting one vertex in the left-hand side to another vertex in the right-hand side. The other odd vertices are then matched within their copy of \(K_5\) in an arbitrary way. The total weight of the optimal \(\mathop{\mathrm{odd}}(T)\)-join is then \(M+4\). In Figure 13, there is an \(\mathop{\mathrm{odd}}(T)\)-join \(J\) with weight \(2M + 2\), i.e., it is a 2-approximate \(\mathop{\mathrm{odd}}(T)\)-join. A tour which starts at vertex \(v\) and continues over one of the dashed-blue edges in \(J\), even after short-cutting will have cost \(3M + O(1)\), while the optimal tour has cost \(2M + O(1)\).

Figure 13: Example showing that Algorithm [alg:alg1] replacing the optimal \mathop{\mathrm{odd}}(T)-join with a 2-approximation does not work. The graph G consists of all edges drawn in the picture regardless of color and solid/dashed/dotted style. The edges of the two copies of K_5 on both sides have all weight 1. P consists of all edges in the picture except for the two edges of length M/2 incident to v marked with blue-dashed line, so \eta = O(1).

11.3 Non-metric TSP↩︎

It is well known that general TSP without the triangle inequality is inapproximable: unless P=NP, no polynomial-time algorithm can achieve any finite approximation ratio for non-metric TSP [13]. Unfortunately, as we show below, this hardness persists even when predictions with arbitrarily small error are available.

Specifically, for every \(r>1\) and \(\epsilon >0\), we show that there is no polynomial-time \(r\)-approximation algorithm for non-metric TSP, even when given predictions of error at most \(\epsilon\), unless P=NP. The proof is by reduction from Hamiltonian Cycle.

Without loss of generality, assume \(\epsilon < 1/r\). Let \(G=(V,E)\) be an instance of Hamiltonian Cycle on \(n=|V|\) vertices. We construct an instance of non-metric TSP on the complete graph \(K = \left(V,\binom{V}{2}\right)\) with edge weights defined by \[w_e = \begin{cases} \epsilon/n & \text{if } e\in E,\\ 1 & \text{if } e\notin E. \end{cases}\] We also provide the prediction \(\hat{X} = \emptyset\).

If \(G\) contains a Hamiltonian cycle, then the corresponding tour in \(K\) uses only edges of weight \(\epsilon/n\), and therefore has total length \(\epsilon\). In this case, the prediction error is \(\eta=\epsilon\).

On the other hand, any tour that uses at least one edge outside \(E\) has cost strictly larger than \(1\). Since \(\epsilon < 1/r\), we have \(1 > r\epsilon\). Therefore, every non-optimal tour has length greater than \(k\) times the optimum. Consequently, any \(r\)-approximation algorithm must return the optimal tour itself, which necessarily corresponds to a Hamiltonian cycle in \(G\). Hence, such an algorithm would solve Hamiltonian Cycle in polynomial time, implying P=NP.

12 More details on the experiments described in Section 8↩︎

In this section, we include additional explanations and comments on our experiments.

12.1 Implementation details↩︎

The code was implemented in Python 3.13. For graph-related tasks, such as the computation of minimum spanning trees and minimum-weight \(S\)-joins, we used the networkx [57] package. We note that more efficient implementations exist for what is currently the main bottleneck of our procedure, namely, minimum-weight perfect matching, such as Blossom V [15]. However, for this paper, we prioritized simplicity over efficiency. All experiments were performed on a cluster featuring dual Intel Xeon E5-2650 v3 CPUs with 128–512 GB of RAM. For neural network inference, we used an NVIDIA GeForce GTX 1080 GPU.

12.2 On the score computation↩︎

In this section, we provide additional details on how the scores guiding the solution search methods are computed.

DIFUSCO:

The paper by [56] provides four checkpointed models, trained on instances with \(n \in \{50, 100, 500, 1000\}\). For inference, we follow a policy of selecting the smallest checkpoint dimension that is greater than or equal to the target size for each problem size under consideration. When the instances are larger than \(1000\) nodes, we used the \(1000\) checkpoint.

GNN-GLS:

The paper by [55] proposed three pretrained models, on data of different sizes: \(n_{\text{model}} \in \{20, 50, 100\}\). We adopt the following policy: \[n_{\text{model}} = \begin{cases} 20 & n \leq 20 \\ 50 & 20 < n \leq 50 \\ 100 & \text{otherwise.} \end{cases}\] The paper proposes to predict regrets, rather than probabilities, where a regret quantifies how undesirable it is to include a given edge in the candidate solution. We then convert regrets into probabilities through a nonincreasing transformation that incorporates a scaling component, rather than relying solely on normalization. The intuition is that regrets associated with “reasonable” edges (i.e., edges not trivially too long to be part of a good solution) should fall within the interval \(\big[0, \tfrac{1}{n} \big]\). To enforce this behavior, each regret value \(r_{ij}\) is mapped to a probability using \[\label{eq:from95regret95to95prob} p_{ij} = \max(1 - n \cdot r_{ij},\, 0),\tag{10}\] which guarantees that larger regrets lead to smaller (and eventually zero) probabilities.

In cases where all predicted regrets map to zero, we default to a uniform distribution weighted by the inverse cost, namely, \[p_{ij} = \frac{1}{w_{ij}}, \qquad \forall\, 1 \leq i < j \leq n.\]

GNN4CO:

The paper by [3] proposes two pre-trained models: one trained on instances of variable size and another trained on large cases with \(n = 200\) nodes. They also introduce two decoding strategies: an autoregressive (AR) decoder and a non-autoregressive (NAR) decoder, where the edge probabilities are predicted simultaneously. In our experiments, we made the following choices. We use only the architecture trained on variable-size instances, as it exhibits better generalization properties (see [3]). We adopt the AR decoding strategy, which yields better solution quality than the NAR decoder (see [3]). We use the same hyperparameter configuration as in the original paper and discard any predicted probabilities below 0.1, following their approach.

SoftDist:

To obtain meaningful probability values, we first normalize the edge costs. For each graph, for each edge \(e\), we define \[\bar{w}(e) := \frac{w(e)}{\max_{e'\in E} w(w)},\] so that all costs lie within the interval \([0, 1]\). To select the appropriate temperature, we choose the one corresponding to the closest instance size among those validated by [12]. For example, for an instance with \(612\) nodes, we use the temperature validated for \(n = 500\). In the case of tiled size, we select the temperature associated with the largest number of nodes, as we observed a correlation between instance size and the lowest optimal temperature (e.g, for \(n = 750\), we opt for the one associated to \(1000\)).

Synthetic predictors (SP)

Given \(\varepsilon \in (0,1)\) and letting \(OPT\) denote the optimal tour value, let \(X^*\) be the set of edges of an optimal tour. We sample a subset \(H^{-} \subseteq X^*\) such that \(\sum_{e \in H^{-}} w(e) \simeq \varepsilon \cdot OPT\) and define \(H^{+}\) analogously. We then set \(X' := (X^* \setminus H^{-}) \cup H^{+}\), and assign predictions equal to \(p = 0.9\) to the edges in \(X'\) and 0 otherwise.

For all predictors, we normalize the scores so that their maximum value is 1. An additional detail concerns normalization with respect to edge weights. For G1,G2, and BS we normalize the scores by the edge costs, as is standard in this line of work [56]. For \(\text{CHR}^+\), we do not apply this normalization. The reason is that our algorithm does not rely on heatmaps alone to construct a feasible solution, but explicitly incorporates the edge weights.

12.3 Algorithm [alg:alg1] vs \(\boldsymbol{\text{CHR}^+}\)↩︎

A careful analysis of Algorithm [alg:alg1] reveals that it requires a subset of edges \(P\) (of cardinality \(k\)) whose associated weights are set to zero. In practice, given a heatmap of edge probabilities, several strategies can be employed to derive \(P\). One approach is to sample \(k\) edges according to the edge probability distribution (Alg1), while another is to select the \(k\) edges with the highest probabilities (Alg1Top). Alternatively, rather than defining \(w'(e)\) as in Algorithm [alg:alg1], one can define the modified weight for every edge \(e\) as \(w'(e) = w(e)(1 - w(e))\) and execute Algorithm [alg:alg1]. Since this latter approach is essentially Christofides’ algorithm applied to a modified graph, we denote it as \(\text{CHR}^+\). While our theoretical analysis is developed for Alg1, we evaluate the three approaches. In all cases, we set \(k = n\). Under the Alg1 approach, we generate 30 distinct edge sets \(P\) for each instance to account for stochasticity; in contrast, the Alg1Top strategy defines \(P\) deterministically based on the provided heatmap. Using SoftDist as a representative predictor, we compute the resulting optimality gaps for each strategy to assess their relative performance. Figure 14 demonstrates that \(\text{CHR}^+\) consistently achieves superior performance. Consequently, we adopt \(\text{CHR}^+\) as the primary decoding strategy for all subsequent experiments. Figure 14 demonstrates the empirical superiority of \(\text{CHR}^+\) over Algorithm [alg:alg1] in effectively leveraging neural predictions.

Figure 14: Comparative analysis of edge selection strategies using SoftDist predictions. We compare the optimality gaps of Alg1, Alg1Top, and \text{CHR}^+. We report the average optimality gap (percentage) on dataset \mathcal{U}.

12.4 Quality of the prediction error with respect to greedy↩︎

12.4.0.1 G2 decoding has worse error dependency then \(\text{CHR}^+\).

Figure 15 reports the average performance of Christofides, G2, and \(\text{CHR}^+\) on the first five instances of our dataset with \(n = 50\). The probabilities are generated using SP, and the sets \(H^+\) and \(H^-\) are sampled at random using 30 different seeds. Since the greedy approach performs significantly worse than the other methods, we exclude it from subsequent analyses. We report only G2 because our preliminary analysis indicates that G1 performs worse than G2.

Figure 15: Average performance (gap percentage) of Christofides, G2, and \text{CHR}^+ on the first five instances of our dataset with n = 50. The probabilities are generated using SP, and the sets H^+ and H^- are sampled at random using 30 different seeds.

12.4.0.2 \(\text{CHR}^+\) exhibits graceful degradation with respect to the prediction error.

Figure 8 shows how \(\text{CHR}^+\) performances are with respect to the prediction error \(\varepsilon\). To obtain this plot, we fix \(n = 500\) and sample \(H^+\) and \(H^-\) at random using 5 different seeds.

12.5 Comparison of different solution search methods↩︎

In this section, we report an extensive analysis of all the solution search methods on the dataset generated uniformly at random (\(\mathcal{U}\)) and the instances from TSPLIB (Euclidean, \(\mathcal{T}_E\), metric non-Euclidean, \(\mathcal{T}_M\)). See Table 1, Table 2, and Table 3. For our experiments, the beam search width is set to 50, providing an optimal trade-off between solution quality and computational efficiency. The results on dataset \(\mathcal{U}\) demonstrate that \(\text{CHR}^+\) is the most robust decoding strategy as the instance size \(n\) scales. While traditional solution search (G1, G2, BS) often sees its performance degrade significantly compared to the Christofides baseline as \(n\) increases, \(\text{CHR}^+\) consistently maintains or improves upon the baseline. Notably, for \(n=1000\), \(\text{CHR}^+\) paired with SoftDist achieves a gap of \(12.80\%\), outperforming plain Christofides (\(12.90\%\)), whereas G1 and G2 degrade to \(29.00\%\) and \(25.43\%\) respectively. When paired with the DIFUSCO predictor, \(\text{CHR}^+\) achieves state-of-the-art results on smaller instances, such as a \(0.10\%\) gap for \(n=50\). The empirical superiority of \(\text{CHR}^+\) generalizes to the Euclidean TSPLIB benchmark (dataset \(\mathcal{T}\)). Across nearly all instances, \(\text{CHR}^+\) produces the lowest integrality gaps. For example, on the pr76 instance, \(\text{CHR}^+\) with DIFUSCO yields a gap of \(1.91\%\), a significant improvement over the \(7.88\%\) gap provided by the standard Christofides algorithm. In the metric non-Euclidean setting, we can only evaluate SoftDist and GNNGLS, since the other two predictors are restricted to the Euclidean framework. In this regime, \(\text{CHR}^+\) is overall less effective. Although the performance gains are less pronounced than in the Euclidean case – primarily because the problem is more challenging – and in some instances closer to those of the plain Christofides algorithm, our CHR\(^+\) remains the most robust decoder across all instances. On average, it performs best when combined with GNNGLS, achieving an average gap of 8.49% compared to 8.70% for Christofides. This difference should be interpreted with some caution, as GNNGLS cannot compute heatmaps on large and difficult instances, which would likely increase the average gap.

Table 1: Table 1: Comparison of the performances of the four decoding strategies with different predictors on dataset \(\mathcal{U}\) as taken from the paper by [53]: results reported are the xmean of average tour length, optimality gap (percentage), and running time (seconds). Concorde running times, marked with (*), are taken from ML4CO-Bench-101. As the instance size increased, GNN-GLS became computationally intractable and was unable to produce valid heatmaps.
Dataset \(\rightarrow\) TSP50 TSP100 TSP500 TSP1000
Method Decoder Tour length Gap (\(\%\)) Runtime (s) Tour length Gap (\(\%\)) Runtime (s) Tour length Gap (\(\%\)) Runtime (s) Tour length Gap (\(\%\)) Runtime (s)
Concorde Exact 5.69 0.00 0.06\(*\) 7.76 0.00 0.24\(*\) 16.55 0.00 18.67\(*\) 23.12 0.00 84.41\(*\)
Christofides Heuristic 6.33 11.30 0.01 8.68 11.95 0.03 18.67 12.86 3.28 26.10 12.9 23.28
SoftDist G1 6.89 21.07 0.00 9.54 23.00 0.00 20.55 24.18 0.18 29.00 25.43 1.35
G2 6.57 15.56 0.00 9.06 16.78 0.14 19.38 17.12 0.03 27.25 17.18 0.18
BS 6.94 22.01 0.03 9.99 28.78 0.14 22.68 37.11 9.46 30.93 33.77 71.92
\(\chrp\) 6.32 11.04 0.01 8.67 11.75 0.03 18.67 12.83 2.77 26.08 12.80 22.15
DIFUSCO G1 5.73 0.72 0.00 7.86 1.4 0.00 24.15 45.96 0.20 46.39 100.69 1.28
G2 5.72 0.54 0.00 7.87 1.51 0.0 24.15 45.96 0.2 43.36 87.57 0.18
BS 5.70 0.14 0.03 7.79 0.48 0.14 29.11 75.94 10.35 52.01 125.0 68.85
\(\chrp\) 5.70 0.18 0.00 7.78 0.33 0.01 19.61 18.49 3.78 29.86 29.18 34.9
GNNGLS G1 6.90 21.37 0.00 10.6 36.66 0.00 30.57 84.75 0.18 - - -
G2 6.33 11.18 0.00 9.27 19.58 0.00 24.98 50.96 0.05 - - -
BS 7.37 29.53 0.02 18.32 136.25 0.12 147.71 793.23 7.66 - - -
\(\chrp\) 6.33 11.23 0.01 8.68 11.92 0.04 18.67 12.87 2.85 - - -
GNN4CO G1 25.03 340.36 0.00 49.1 533.50 0.00 231.40 1298.68 0.18 452.02 1855.45 1.25
G2 25.04 341.21 0.00 49.23 535.20 0.00 228.39 1280.47 0.05 452.02 1855.45 1.25
BS 24.53 331.91 0.03 48.86 530.48 0.13 231.68 1300.40 8.88 454.08 1864.37 63.29
\(\chrp\) 14.65 158.04 0.01 20.98 170.39 0.04 30.21 82.53 3.44 33.87 46.48 23.23
Table 2: Comparison of the performances of the four decoding strategies with different predictors on dataset \(\mathcal{T}\): results reported are optimality gap (Percentage). As the instance size increased, GNN-GLS became computationally intractable and was unable to produce valid heatmaps.
\(n\) Instance (\(\downarrow\)) Algorithm
Christofides SoftDist DIFUSCO GNNGLS GNN4CO
G1 G2 BS \(\chrp\) G1 G2 BS \(\chrp\) G1 G2 BS \(\chrp\) G1 G2 BS \(\chrp\)
Gap (%) Runtime (s) Gap (%) Runtime (s) Gap (%) Runtime (s) Gap (%) Runtime (s) Gap (%) Runtime (s) Gap (%) Runtime (s) Gap (%) Runtime (s) Gap (%) Runtime (s) Gap (%) Runtime (s) Gap (%) Runtime (s) Gap (%) Runtime (s) Gap (%) Runtime (s)
51 eil51 11.98 0.02 23.30 0.00 19.08 0.00 19.84 0.09 10.58 0.02 13.96 0.00 6.07 0.00 2.93 0.08 2.78 0.01 19.69 0.00 12.21 0.00 31.03 0.08 11.98 0.02 300.46 0.00 322.16 0.00 280.10 0.09 237.48 0.02
52 berlin52 13.51 0.02 30.15 0.00 29.74 0.00 24.51 0.09 12.73 0.03 11.28 0.00 12.29 0.00 8.85 0.09 9.28 0.01 55.68 0.00 38.54 0.00 35.47 0.09 13.51 0.02 280.56 0.00 284.69 0.02 279.92 0.09 41.30 0.03
70 st70 12.60 0.05 21.64 0.01 25.38 0.01 48.45 0.17 11.51 0.06 0.00 0.01 0.00 0.01 0.00 0.17 0.00 0.02 18.71 0.01 9.94 0.01 37.72 0.17 12.60 0.06 361.54 0.01 349.36 0.01 351.87 0.19 284.40 0.05
76 eil76 14.01 0.07 17.18 0.01 17.36 0.01 23.84 0.21 12.24 0.06 0.18 0.01 0.18 0.01 0.18 0.22 0.18 0.03 22.66 0.01 13.36 0.01 25.21 0.21 14.01 0.08 345.64 0.01 354.90 0.01 359.25 0.21 289.15 0.05
76 pr76 7.88 0.03 8.08 0.01 30.51 0.01 31.58 0.23 8.88 0.04 1.91 0.01 1.91 0.01 1.91 0.21 1.91 0.03 43.97 0.01 37.30 0.01 35.13 0.19 8.61 0.05 541.93 0.01 549.61 0.01 539.63 0.20 17.89 0.05
99 rat99 12.15 0.08 36.59 0.01 29.93 0.01 37.22 0.40 12.45 0.11 15.60 0.02 15.60 0.01 15.60 0.39 15.60 0.05 28.34 0.01 21.48 0.01 32.63 0.39 12.15 0.10 420.38 0.02 398.06 0.01 424.34 0.39 271.30 0.14
100 kroA100 9.43 0.10 38.42 0.01 39.60 0.02 28.82 0.42 14.49 0.11 11.35 0.02 11.35 0.01 11.35 0.40 11.35 0.05 26.17 0.01 13.68 0.01 47.75 0.40 9.43 0.12 645.32 0.02 675.39 0.02 678.76 0.40 360.86 0.24
100 kroB100 8.45 0.08 23.50 0.01 22.77 0.01 38.37 0.42 14.06 0.09 5.39 0.02 5.39 0.01 4.91 0.40 5.39 0.05 31.69 0.01 16.60 0.01 41.93 0.40 8.45 0.11 615.19 0.02 611.68 0.02 600.34 0.39 381.32 0.14
100 kroC100 9.66 0.10 26.24 0.01 15.00 0.01 32.50 0.39 9.43 0.10 11.16 0.02 11.16 0.03 11.16 0.39 11.16 0.05 26.87 0.01 12.93 0.01 36.22 0.41 9.66 0.11 727.50 0.02 722.83 0.02 712.18 0.40 27.35 0.10
100 kroD100 11.70 0.10 17.00 0.01 21.41 0.02 35.75 0.42 11.85 0.11 6.64 0.02 6.64 0.01 6.47 0.40 6.64 0.05 26.56 0.01 14.82 0.01 36.16 0.40 11.70 0.12 658.56 0.02 660.21 0.02 637.87 0.40 411.90 0.13
100 kroE100 7.93 0.13 21.87 0.01 28.48 0.01 26.79 0.42 9.77 0.14 5.32 0.02 5.32 0.01 5.32 0.40 5.32 0.05 25.01 0.01 12.59 0.01 26.92 0.40 7.93 0.14 655.35 0.02 684.36 0.02 651.07 0.40 383.05 0.12
100 rd100 12.58 0.15 31.04 0.01 26.12 0.01 35.54 0.43 12.67 0.14 0.09 0.02 0.09 0.01 0.09 0.40 0.09 0.05 25.67 0.01 16.99 0.01 33.23 0.41 12.58 0.17 542.36 0.02 547.80 0.02 520.11 0.40 24.98 0.17
101 eil101 12.85 0.13 17.40 0.01 19.70 0.02 24.82 0.44 13.07 0.15 66.60 0.02 77.56 0.02 92.47 0.41 12.86 0.15 27.92 0.01 26.58 0.02 38.68 0.42 12.85 0.15 420.75 0.02 425.03 0.02 408.26 0.41 22.93 0.15
105 lin105 14.65 0.10 21.12 0.02 32.36 0.02 42.02 0.46 13.96 0.09 64.87 0.02 35.16 0.02 74.50 0.44 14.70 0.11 41.58 0.02 16.61 0.02 25.51 0.44 14.65 0.11 1044.13 0.02 1043.03 0.02 1031.18 0.44 43.94 0.12
107 pr107 8.14 0.07 8.04 0.02 6.03 0.02 26.20 0.48 5.22 0.15 28.63 0.02 9.25 0.02 26.67 0.45 5.87 0.16 5.36 0.02 7.32 0.02 29.99 0.46 8.14 0.09 1662.95 0.02 1659.14 0.02 1658.01 0.45 14.30 0.10
124 pr124 9.55 0.07 17.49 0.02 18.80 0.02 19.44 0.68 10.05 0.10 79.26 0.03 39.23 0.02 101.43 0.64 7.64 0.09 46.34 0.02 57.28 0.02 58.95 0.53 10.57 0.10 1119.52 0.03 1118.40 0.02 1060.50 0.64 31.40 0.14
127 bier127 12.70 0.25 38.39 0.02 18.67 0.03 30.73 0.74 8.16 0.22 77.50 0.03 74.71 0.03 70.80 0.69 10.13 0.17 23.53 0.02 12.72 0.02 34.74 0.59 11.15 0.25 424.68 0.03 415.92 0.03 401.89 0.70 73.14 0.26
130 ch130 11.89 0.15 40.94 0.02 17.06 0.03 26.23 0.78 11.87 0.19 59.97 0.03 34.67 0.03 106.78 0.75 10.48 0.16 23.96 0.02 28.38 0.03 47.87 0.75 11.89 0.18 606.75 0.03 620.37 0.03 585.90 0.74 305.46 0.40
136 pr136 7.24 0.08 18.31 0.03 13.42 0.03 36.26 0.84 12.63 0.16 32.76 0.03 33.61 0.03 81.42 0.81 11.76 0.16 75.64 0.03 63.62 0.03 136.57 0.66 12.97 0.13 618.32 0.03 654.82 0.03 639.29 0.81 307.58 0.22
144 pr144 20.63 0.08 7.74 0.03 11.18 0.03 6.67 0.97 20.63 0.11 52.49 0.04 41.44 0.03 77.29 0.90 23.63 0.15 67.82 0.03 110.49 0.03 61.45 0.76 20.63 0.11 1543.76 0.04 1574.92 0.03 1508.91 0.91 262.50 0.18
150 ch150 9.68 0.17 24.64 0.04 18.11 0.04 34.25 1.07 10.16 0.21 29.66 0.06 34.71 0.04 86.40 1.01 9.55 0.23 25.47 0.04 18.56 0.03 51.74 1.06 9.68 0.21 639.24 0.04 647.45 0.04 657.04 1.04 26.41 0.32
150 kroA150 10.68 0.35 24.99 0.04 21.06 0.03 33.90 1.11 10.76 0.29 45.03 0.04 52.13 0.04 78.72 1.02 11.06 0.31 26.71 0.03 20.23 0.03 49.33 1.04 10.68 0.38 784.48 0.04 762.16 0.04 799.74 1.02 25.30 0.45
150 kroB150 14.18 0.41 21.38 0.04 21.92 0.03 37.83 1.04 14.13 0.33 35.02 0.04 52.41 0.06 90.39 1.01 15.14 0.39 25.64 0.04 20.27 0.03 59.92 1.06 14.18 0.41 879.62 0.04 874.16 0.04 895.01 1.04 29.72 0.33
152 pr152 7.52 0.08 17.53 0.04 15.96 0.03 21.27 1.09 7.52 0.12 33.37 0.04 20.50 0.04 68.38 1.04 8.83 0.18 69.66 0.04 145.14 0.03 95.88 0.87 7.52 0.12 1483.79 0.04 1481.62 0.04 1501.13 1.03 172.88 0.25
159 u159 11.45 0.22 21.74 0.04 18.39 0.04 42.93 1.19 9.01 0.25 36.91 0.04 34.34 0.04 57.93 1.16 11.53 0.26 20.46 0.04 16.52 0.04 17.66 0.98 11.30 0.24 1111.82 0.05 1114.74 0.04 1119.59 1.15 274.01 0.35
195 rat195 13.93 0.41 11.85 0.07 17.15 0.05 23.20 1.93 12.19 0.49 44.84 0.07 39.43 0.06 94.11 1.83 22.33 0.48 55.39 0.07 80.84 0.06 73.00 1.50 13.93 0.50 700.93 0.07 737.57 0.06 719.40 1.88 111.34 0.65
198 d198 9.54 0.47 21.42 0.07 17.82 0.06 18.55 2.03 9.73 0.46 40.03 0.08 34.77 0.07 74.74 1.92 10.50 0.34 17.78 0.07 22.97 0.06 39.66 1.93 9.54 0.53 1062.26 0.08 1012.50 0.07 991.25 1.92 101.73 0.67
200 kroA200 12.34 0.73 30.32 0.07 25.40 0.06 32.04 2.10 14.50 0.80 40.62 0.08 34.23 0.09 90.29 1.99 14.40 0.73 21.89 0.07 17.82 0.05 46.60 2.07 12.34 0.79 944.17 0.08 960.59 0.07 926.32 2.02 228.31 1.05
200 kroB200 11.42 0.57 23.53 0.07 19.65 0.06 53.19 2.09 11.36 0.67 59.25 0.08 41.62 0.07 88.05 1.97 14.76 0.70 25.62 0.07 22.23 0.06 47.38 2.07 11.42 0.63 914.76 0.08 886.21 0.06 945.79 2.01 324.47 1.26
225 ts225 6.03 0.20 20.02 0.10 11.23 0.07 21.29 2.77 4.85 0.29 24.29 0.11 16.05 0.09 46.92 2.62 6.13 0.31 50.77 0.10 31.85 0.07 62.14 2.22 5.35 0.29 1122.68 0.11 1126.39 0.09 1137.42 2.61 5.86 0.30
225 tsp225 13.01 0.56 27.91 0.10 21.09 0.07 41.73 2.73 12.68 0.59 39.26 0.11 31.41 0.09 84.15 2.69 16.78 0.68 25.14 0.10 19.88 0.10 40.44 2.68 13.01 0.65 1234.84 0.11 1215.86 0.09 1218.04 2.62 19.50 0.74
226 pr226 15.00 0.45 17.27 0.10 12.51 0.07 26.30 2.75 15.62 0.38 97.31 0.11 93.23 0.12 156.85 2.64 13.34 0.51 90.27 0.10 119.94 0.07 43.51 2.17 14.72 0.45 1375.20 0.11 1383.61 0.09 1502.31 2.62 135.34 0.89
262 gil262 12.48 1.32 29.26 0.15 20.47 0.11 44.63 3.96 13.39 1.29 117.90 0.16 90.03 0.15 148.93 3.88 21.67 1.31 35.64 0.14 12.42 0.09 48.68 3.99 12.48 1.31 934.63 0.16 887.60 0.13 955.17 3.92 207.60 1.85
264 pr264 10.97 0.60 22.01 0.15 12.33 0.11 17.83 3.93 11.40 0.62 40.88 0.16 20.36 0.12 76.84 3.85 11.15 0.63 16.07 0.17 15.19 0.10 52.77 3.64 10.97 0.60 2148.82 0.16 2176.48 0.14 2156.01 3.81 34.06 0.79
280 a280 15.02 1.07 18.93 0.17 31.51 0.14 28.59 4.57 12.24 0.82 39.25 0.19 26.04 0.15 74.53 4.73 17.96 0.97 21.70 0.20 14.45 0.11 39.98 4.56 15.02 1.10 1318.69 0.19 1317.90 0.14 1300.96 4.61 20.01 1.11
299 pr299 9.97 1.42 29.17 0.21 17.60 0.14 36.33 5.59 9.53 1.39 40.69 0.24 27.64 0.16 72.14 5.62 19.24 1.68 31.36 0.24 32.03 0.18 58.76 5.45 10.58 1.50 1282.27 0.24 1258.50 0.19 1264.83 5.57 19.29 1.74
318 lin318 12.90 1.79 21.56 0.24 21.19 0.16 30.34 6.50 13.99 1.47 50.45 0.28 33.03 0.18 94.91 6.36 18.22 2.09 28.52 0.24 18.71 0.17 46.33 6.59 12.90 1.81 1090.49 0.30 1103.34 0.25 1073.13 6.85 28.49 2.12
400 rd400 13.58 4.81 24.76 0.63 25.10 0.33 32.60 12.92 13.82 4.98 43.77 0.49 35.71 0.38 85.75 12.71 17.96 5.19 25.47 0.45 17.13 0.30 38.96 12.78 13.58 5.07 1046.74 0.48 1043.00 0.34 1104.71 12.44 27.65 5.66
417 fl417 12.55 2.12 32.21 0.71 20.11 0.30 37.48 13.08 9.25 1.79 107.62 0.54 86.25 0.36 213.09 12.95 16.26 4.19 26.85 0.49 12.13 0.29 68.04 13.24 12.55 2.45 4279.19 0.60 4259.07 0.39 4175.90 12.92 108.90 2.86
439 pr439 12.26 2.53 24.84 0.57 15.39 0.41 42.99 15.09 11.84 2.54 57.27 0.61 46.33 0.42 89.73 15.27 18.04 4.10 79.79 0.57 81.02 0.36 163.88 12.11 12.75 2.85 1598.09 0.62 1546.99 0.45 1533.21 15.94 12.33 2.79
442 pcb442 8.05 3.82 23.85 0.86 15.22 0.35 30.38 16.38 11.31 3.37 36.09 0.65 30.38 0.43 72.93 16.82 15.50 5.05 22.06 0.59 20.26 0.37 33.68 16.55 8.05 4.22 1648.96 0.64 1627.67 0.49 1619.45 16.35 21.96 4.84
493 d493 9.41 6.47 16.79 0.79 19.98 0.55 26.41 22.10 10.66 6.70 57.15 0.84 49.10 0.55 87.03 22.20 14.57 7.11 24.62 0.78 16.61 0.54 43.57 22.70 9.41 6.71 1401.60 0.91 1371.19 0.53 1392.21 22.35 106.68 8.85
574 u574 11.40 10.24 31.50 1.16 23.97 0.72 36.50 34.20 11.56 9.89 68.57 1.34 49.86 0.70 79.24 34.52 21.57 16.57 26.93 1.16 21.21 0.71 44.94 34.86 11.40 10.62 2459.83 1.40 2438.10 0.78 2442.22 35.29 130.47 13.57
575 rat575 15.22 11.72 20.79 1.16 16.86 0.64 26.87 34.89 12.86 10.79 61.42 1.27 52.30 0.70 96.90 35.15 22.03 13.44 24.29 1.16 13.76 0.63 40.85 34.86 15.22 11.99 1164.88 1.30 1181.68 0.83 1188.18 37.23 18.89 12.91
654 p654 13.46 3.12 16.05 1.66 10.00 0.79 31.47 49.20 12.60 9.96 90.59 1.78 75.16 1.06 111.95 49.20 22.64 13.16 244.10 1.63 424.19 0.81 237.82 39.53 13.46 3.58 6836.26 1.83 6712.33 1.06 6747.82 52.05 122.28 4.89
657 d657 12.11 15.35 21.63 1.73 20.41 0.92 32.85 54.37 10.85 14.35 58.42 1.85 51.88 1.06 82.44 52.15 21.43 22.07 27.11 1.71 15.75 0.91 45.88 52.17 12.11 15.71 1910.61 1.81 1897.91 1.09 1924.22 54.00 56.64 17.19
724 u724 15.14 19.62 30.32 2.24 16.58 1.09 30.50 73.13 13.19 19.94 50.12 2.36 43.28 1.12 70.49 72.34 21.07 25.95 - - - - - - - - 2412.48 2.60 2392.98 1.32 2392.41 70.86 21.99 20.82
783 rat783 13.87 28.71 22.36 2.68 18.65 1.38 40.41 85.75 15.02 27.28 90.93 2.90 70.52 1.28 112.66 87.15 24.83 36.14 - - - - - - - - 1555.43 3.15 1544.81 1.61 1549.19 88.35 18.31 29.50
1002 pr1002 10.56 44.67 23.79 5.42 18.55 2.21 32.97 185.11 9.58 33.65 91.32 5.67 87.77 2.68 123.49 181.32 30.12 66.86 - - - - - - - - 2822.56 6.43 2825.17 2.63 2834.86 183.66 47.70 45.27
1060 u1060 11.07 60.23 20.78 6.40 18.57 2.49 34.08 214.20 10.61 58.68 85.03 6.82 74.33 3.16 118.33 213.65 28.08 84.87 - - - - - - - - 3206.45 6.91 3221.65 2.99 3206.46 219.45 12.03 61.78
1084 vm1084 9.39 32.08 31.39 7.19 21.93 2.42 36.17 242.63 10.61 31.28 103.33 7.74 82.17 2.70 134.55 240.49 31.00 70.82 - - - - - - - - 2789.94 7.90 2758.01 3.27 2835.95 236.90 25.96 35.87
1173 pcb1173 11.35 56.17 27.81 8.45 18.30 3.15 32.11 298.96 10.85 65.10 111.17 8.72 100.40 3.22 129.08 284.55 38.16 105.72 - - - - - - - - 1919.67 9.25 1890.49 3.50 1900.43 298.40 21.49 60.24
1291 d1291 11.76 18.70 18.89 10.92 20.06 4.36 23.01 370.90 12.99 20.40 109.97 11.47 103.71 4.83 130.73 372.91 26.69 43.62 - - - - - - - - 2957.12 11.85 2981.71 4.56 3005.66 394.95 58.32 29.14
Table 3: Results on non-Euclidean (metric) TSP instances for two predictors: GNNGLS and SoftDist.
\(n\) 14 16 22 29 48 96 137 175 202 229 431 532 535 535 666
Algorithm \(\downarrow\) Decoder \(\downarrow\) Instance \(\rightarrow\) burma14 ulysses16 ulysses22 bayg29 att48 gr96 gr137 si175 gr202 gr229 gr431 att532 si535 ali535 gr666
\(\downarrow\)
Concorde Opt. 3323 6859 7013 1610 10628 55209 69853 21407 40160 134602 171414 27686 48450 202339 294358 -
Runtime (s) 0 0.02 0.04 0.01 0.06 0.23 0.24 0.89 0.35 3.91 8.91 9.61 2.44 2.28 7.45 2.43
Christofides Tour length 3606 6983 7411 1716 12613 61951 76589 21954 43377 147311 186132 31219 50255 225134 326784 -
Gap (%) 8.52 1.81 5.68 6.58 18.68 12.21 9.64 2.56 8.01 9.44 8.59 12.76 3.73 11.27 11.02 8.70
Runtime (s) 0.00 0.00 0.00 0.00 0.01 0.02 0.04 0.08 0.25 0.34 2.01 2.29 2.56 3.00 5.64 1.08
SoftDist G1 Tour length 4122 7179 7654 1874 12140 67063 89865 22306 48259 167203 214454 34227 49959 249587 352839 -
Gap (%) 24.04 4.67 9.14 16.40 14.23 21.47 28.65 4.20 20.17 24.22 25.11 23.63 3.11 23.35 19.87 17.48
Runtime (s) 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.01 0.01 0.02 0.11 0.20 0.21 0.21 0.39 0.08
G2 Tour length 3876 7771 7965 1831 13093 63278 80274 21925 46018 152241 194880 32554 49159 232568 335261 -
Gap (%) 16.64 13.30 13.57 13.73 23.19 14.62 14.92 2.42 14.59 13.10 13.69 17.58 1.46 14.94 13.90 13.44
Runtime (s) 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.01 0.00 0.02 0.04 0.03 0.03 0.05 0.01
BS Tour length 3953 6971 7278 2179 12377 65501 81968 22258 50205 176573 237226 38930 50332 276774 395286 -
Gap (%) 18.96 1.63 3.78 35.34 16.46 18.64 17.34 3.98 25.01 31.18 38.39 40.61 3.88 36.79 34.29 21.75
Runtime (s) 0.00 0.00 0.00 0.00 0.00 0.02 0.04 0.07 0.10 0.14 0.77 1.44 1.42 1.45 2.68 1.04
CHR\(^+\) Tour length 3750 7098 7411 1716 12486 61951 76589 21972 43377 150731 190024 31084 50050 227139 325623 -
Gap(%) 12.85 3.48 5.68 6.58 17.48 12.21 9.64 2.64 8.01 11.98 10.86 12.27 3.30 12.26 10.62 9.32
Runtime (s) 0.00 0.00 0.00 0.00 0.01 0.02 0.05 0.09 0.27 0.26 2.08 2.45 2.13 2.62 5.66 1.04
GNNGLS G1 Tour length 3998 6943 7408 2005 13698 76385 100791 22263 63113 63113 63113 35516 35516 733650 - -
Gap(%) 20.31 1.22 5.63 24.53 28.89 38.36 44.29 4.00 57.15 35.10 47.40 28.28 3.50 262.58 - 43.19
Runtime(s) 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.01 0.01 0.02 0.11 0.20 0.22 0.21 - 0.06
G2 Tour length 3381 7989 7958 1974 13884 61482 84868 21957 57008 164788 235945 34002 49413 792445 - -
Gap (%) 1.75 16.47 13.47 22.61 30.64 11.36 21.50 2.57 41.95 22.43 37.65 22.81 1.99 291.64 - 38.84
Runtime (s) 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.01 0.01 0.03 0.07 0.07 0.05 - 0.02
BS Tour length 3506 6900 7728 2186 12223 85666 110524 22447 67095 192674 237335 41957 50266 2877561 - -
Gap (%) 5.51 0.60 10.20 35.78 15.01 55.17 58.22 4.86 67.07 43.14 38.47 51.55 3.75 1322.15 - 122.07
Runtime (s) 0.00 0.00 0.00 0.00 0.01 0.02 0.04 0.07 0.10 0.14 0.75 1.37 1.43 1.31 - 0.38
CHR\(^{+}\) Tour length 3606 6983 7411 1716 12520 61951 76589 21954 43377 147311 186132 31219 50255 225636 - -
Gap (%) 8.52 1.81 5.68 6.58 17.80 12.21 9.64 2.56 8.01 9.44 8.59 12.76 3.73 11.51 - 8.49
Runtime (s) 0.00 0.00 0.00 0.00 0.01 0.03 0.05 0.19 0.27 0.27 2.19 2.63 2.69 2.98 - 0.80

12.6 2-opt improvement↩︎

We evaluate the impact of 2-opt in \(\text{CHR}^+\), G2, and BS. G1 is omitted due to its documented sub-optimality relative to G2; similarly, we restrict our predictors to SoftDist and DIFUSCO. The results for dataset \(\mathcal{U}\) are summarized in Table 4. \(\text{CHR}^+\) demonstrates superior performance across all dimensions except \(n = 50\), where BS achieves a lower gap—primarily due to a superior initialization tour. Crucially, the number of 2-opt swaps required to reach local optimality is comparable between \(\text{CHR}^+\) and the plain Christofides baseline. When considering the runtimes reported in Table 1, it is evident that \(\text{CHR}^+\) has, on average, the same running time as Christofides. Consequently, the \(\text{CHR}^+\) + 2-opt pipeline yields significantly higher solution quality than Christofides at an equivalent computational cost.

Table 4: Comparison of the performances of G2, BS, and \(\chrp\) enhanced with the 2-opt swaps, with different predictors on dataset \(\mathcal{U}\): Integrality gap \((\%)\) and number of 2-opt swaps (\(\pm\) standard deviation).
\(n \; \rightarrow\) 50 100 500 1000
Gap (%) Swaps Gap (%) Swaps Gap (%) Swaps Gap (%) Swaps
Christofides 3.93 \(\pm\) 2.18 10 \(\pm\) 4 4.52 \(\pm\) 1.70 20 \(\pm\) 5 5.01 \(\pm\) 0.78 104 \(\pm\) 11 5.00 \(\pm\) 0.56 207 \(\pm\) 17
\(\chrp\) SoftDist 3.80 \(\pm\) 2.19 10 \(\pm\) 4 4.44 \(\pm\) 1.68 20 \(\pm\) 5 4.99 \(\pm\) 0.77 104 \(\pm\) 11 4.98 \(\pm\) 0.56 206 \(\pm\) 17
DIFUSCO 0.10 \(\pm\) 0.27 0 \(\pm\) 1 0.23 \(\pm\) 0.33 1 \(\pm\) 1 5.65 \(\pm\) 0.88 149 \(\pm\) 15 7.26 \(\pm\) 0.82 434 \(\pm\) 33
G2 SoftDist 3.95 \(\pm\) 2.60 13 \(\pm\) 6 4.74 \(\pm\) 2.13 25 \(\pm\) 8 5.19 \(\pm\) 0.98 117 \(\pm\) 20 5.36 \(\pm\) 0.68 244 \(\pm\) 30
DIFUSCO 0.15 \(\pm\) 0.48 1 \(\pm\) 2 0.43 \(\pm\) 0.93 3 \(\pm\) 5 6.92 \(\pm\) 1.30 238 \(\pm\) 28 9.20 \(\pm\) 0.95 1115 \(\pm\) 52
BS SoftDist 5.73 \(\pm\) 3.35 15 \(\pm\) 7 7.25 \(\pm\) 2.63 36 \(\pm\) 11 8.55 \(\pm\) 1.27 219 \(\pm\) 25 7.99 \(\pm\) 0.89 396 \(\pm\) 36
DIFUSCO 0.09 \(\pm\) 0.25 0 \(\pm\) 1 0.25 \(\pm\) 0.45 1 \(\pm\) 2 8.68 \(\pm\) 1.40 461 \(\pm\) 43 9.18 \(\pm\) 0.89 1448 \(\pm\) 72

References↩︎

[1]
M. Mitzenmacher and S. Vassilvitskii, Algorithms with predictions,” in Beyond the worst-case analysis of algorithms, T. Roughgarden, Ed. Cambridge University Press, 2020, pp. 646–662.
[2]
A. Lindermayr and N. Megow, Accessed 25 January 2026“Algorithms with predictions.” https://algorithms-with-predictions.github.io, 2022.
[3]
C. K. Joshi, Q. Cappart, L.-M. Rousseau, and T. Laurent, “Learning the travelling salesperson problem requires rethinking generalization,” Constraints An Int. J., vol. 27, no. 1–2, pp. 70–98, 2022, doi: 10.1007/S10601-022-09327-Y.
[4]
Y. Bengio, A. Lodi, and A. Prouvost, “Machine learning for combinatorial optimization: A methodological tour d’horizon,” Eur. J. Oper. Res., vol. 290, no. 2, pp. 405–421, 2021, doi: 10.1016/J.EJOR.2020.07.063.
[5]
D. Applegate and W. Cook, “Concorde TSP solver.” 2006.
[6]
K. Helsgaun, “An effective implementation of the Lin-Kernighan traveling salesman heuristic,” Eur. J. Oper. Res., vol. 126, no. 1, pp. 106–130, 2000, doi: 10.1016/S0377-2217(99)00284-2.
[7]
O. Vinyals, M. Fortunato, and N. Jaitly, “Pointer networks,” in Advances in neural information processing systems 28: Annual conference on neural information processing systems 2015, 2015, pp. 2692–2700, [Online]. Available: https://proceedings.neurips.cc/paper/2015/hash/29921001f2f04bd3baee84a12e98098f-Abstract.html.
[8]
E. B. Khalil, H. Dai, Y. Zhang, B. Dilkina, and L. Song, “Learning combinatorial optimization algorithms over graphs,” in Advances in neural information processing systems 30: Annual conference on neural information processing systems 2017, 2017, pp. 6348–6358, [Online]. Available: https://proceedings.neurips.cc/paper/2017/hash/d9896106ca98d3d05b8cbdf4fd8b13a1-Abstract.html.
[9]
C. K. Joshi, T. Laurent, and X. Bresson, “An efficient graph convolutional network technique for the travelling salesman problem,” CoRR, vol. abs/1906.01227, 2019, [Online]. Available: http://arxiv.org/abs/1906.01227.
[10]
Y. Li, J. Guo, R. Wang, H. Zha, and J. Yan, “Fast T2T: Optimization consistency speeds up diffusion-based training-to-testing solving for combinatorial optimization,” in Advances in neural information processing systems 38: Annual conference on neural information processing systems 2024, NeurIPS 2024, 2024, [Online]. Available: http://papers.nips.cc/paper\_files/paper/2024/hash/352b13f01566ae34affacc60e98c16af-Abstract-Conference.html.
[11]
Z.-H. Fu, K.-B. Qiu, and H. Zha, “Generalize a small pre-trained model to arbitrarily large TSP instances,” in Thirty-fifth AAAI conference on artificial intelligence, AAAI 2021, thirty-third conference on innovative applications of artificial intelligence, IAAI 2021, the eleventh symposium on educational advances in artificial intelligence, EAAI 2021, 2021, pp. 7474–7482, doi: 10.1609/AAAI.V35I8.16916.
[12]
Y. Xia, X. Yang, Z. Liu, Z. Liu, L. Song, and J. Bian, “Position: Rethinking post-hoc search-based neural approaches for solving large-scale traveling salesman problems,” in Forty-first international conference on machine learning, ICML 2024, 2024, [Online]. Available: https://openreview.net/forum?id=cEJ9jNJuJP.
[13]
S. Sahni and T. F. Gonzalez, “P-complete approximation problems,” J. ACM, vol. 23, no. 3, pp. 555–565, 1976, doi: 10.1145/321958.321975.
[14]
N. Christofides, “Worst-case analysis of a new heuristic for the travelling salesman problem,” Carnegie-Mellon Univ Pittsburgh PA Management Sciences Research Group, 1976.
[15]
V. Kolmogorov, “Blossom V: A new implementation of a minimum cost perfect matching algorithm,” Mathematical Programming Computation, vol. 1, no. 1, pp. 43–67, 2009, doi: 10.1007/s12532-009-0002-8.
[16]
M. X. Goemans and D. P. Williamson, Announced at SODA 1992“A general approximation technique for constrained forest problems,” SIAM J. Comput., vol. 24, no. 2, pp. 296–317, 1995, doi: 10.1137/S0097539793242618.
[17]
M. I. Shamos and D. Hoey, “Closest-point problems,” in 16th annual symposium on foundations of computer science, 1975, 1975, pp. 151–162, doi: 10.1109/SFCS.1975.8.
[18]
K. R. Varadarajan and P. K. Agarwal, “Approximation algorithms for bipartite and non-bipartite matching in the plane,” in Proceedings of the tenth annual ACM-SIAM symposium on discrete algorithms, 1999, pp. 805–814, [Online]. Available: http://dl.acm.org/citation.cfm?id=314500.314918.
[19]
G. Cornuéjols, J. Fonlupt, and D. Naddef, “The traveling salesman problem on a graph and some related integer polyhedra,” Math. Program., vol. 33, no. 1, pp. 1–27, 1985, doi: 10.1007/BF01582008.
[20]
V. Traub and J. Vygen, Approximation algorithms for traveling salesman problems. Cambridge University Press, 2024.
[21]
T. Lykouris and S. Vassilvitskii, Announced at ICML 2018“Competitive caching with machine learned advice,” J. ACM, vol. 68, no. 4, pp. 24:1–24:25, 2021, doi: 10.1145/3447579.
[22]
M. Purohit, Z. Svitkina, and R. Kumar, “Improving online algorithms via ML predictions,” in Advances in neural information processing systems 31: Annual conference on neural information processing systems 2018, NeurIPS 2018, 2018, pp. 9684–9693, [Online]. Available: https://proceedings.neurips.cc/paper/2018/hash/73a427badebe0e32caa2e1fc7530b7f3-Abstract.html.
[23]
M. Dinitz, S. Im, T. Lavastida, B. Moseley, and S. Vassilvitskii, “Faster matchings via learned duals,” in Advances in neural information processing systems 34: Annual conference on neural information processing systems 2021, NeurIPS 2021, 2021, pp. 10393–10406, [Online]. Available: https://proceedings.neurips.cc/paper/2021/hash/5616060fb8ae85d93f334e7267307664-Abstract.html.
[24]
A. Antoniadis, M. Eliáš, A. Polak, and M. Venzin, “Approximation algorithms for combinatorial optimization with predictions,” in The thirteenth international conference on learning representations, ICLR 2025, 2025, [Online]. Available: https://openreview.net/forum?id=AEFVa6VMu1.
[25]
E. Bampis, B. Escoffier, D. Fotakis, P. Patsilinakos, and M. Xefteris, “Polynomial time learning augmented algorithms for NP-hard permutation problems,” in Forty-second international conference on machine learning, ICML 2025, vancouver, BC, canada, july 13-19, 2025, 2025, [Online]. Available: https://openreview.net/forum?id=29bt3kWj2J.
[26]
C. K. Joshi and R. Anand, “Recent advances in deep learning for routing problems,” in ICLR blog track, 2022, [Online]. Available: https://iclr-blog-track.github.io/2022/03/25/deep-learning-for-routing-problems/.
[27]
Y.-D. Kwon, J. Choo, B. Kim, I. Yoon, Y. Gwon, and S. Min, POMO: Policy optimization with multiple optima for reinforcement learning,” in Advances in neural information processing systems 33: Annual conference on neural information processing systems 2020, NeurIPS 2020, 2020, [Online]. Available: https://proceedings.neurips.cc/paper/2020/hash/f231f2107df69eab0a3862d50018a9b2-Abstract.html.
[28]
M. Kim, J. Park, and J. Kim, “Learning collaborative policies to solve NP-hard routing problems,” in Advances in neural information processing systems 34: Annual conference on neural information processing systems 2021, NeurIPS 2021, 2021, pp. 10418–10430, [Online]. Available: https://proceedings.neurips.cc/paper/2021/hash/564127c03caab942e503ee6f810f54fd-Abstract.html.
[29]
Y.-D. Kwon, J. Choo, I. Yoon, M. Park, D. Park, and Y. Gwon, “Matrix encoding networks for neural combinatorial optimization,” in Advances in neural information processing systems 34: Annual conference on neural information processing systems 2021, NeurIPS 2021, 2021, pp. 5138–5149, [Online]. Available: https://proceedings.neurips.cc/paper/2021/hash/29539ed932d32f1c56324cded92c07c2-Abstract.html.
[30]
D. Drakulic, S. Michel, F. Mai, A. Sors, and J.-M. Andreoli, BQ-NCO: Bisimulation quotienting for efficient neural combinatorial optimization,” in Advances in neural information processing systems 36: Annual conference on neural information processing systems 2023, NeurIPS 2023, 2023, [Online]. Available: http://papers.nips.cc/paper\_files/paper/2023/hash/f445ba15f0f05c26e1d24f908ea78d60-Abstract-Conference.html.
[31]
M. Kim, J. Park, and J. Park, Sym-NCO: Leveraging symmetricity for neural combinatorial optimization,” in Advances in neural information processing systems 35: Annual conference on neural information processing systems 2022, NeurIPS 2022, 2022, [Online]. Available: http://papers.nips.cc/paper\_files/paper/2022/hash/0cddb777d3441326544e21b67f41bdc8-Abstract-Conference.html.
[32]
R. Qiu, Z. Sun, and Y. Yang, DIMES: A differentiable meta solver for combinatorial optimization problems,” in Advances in neural information processing systems 35: Annual conference on neural information processing systems 2022, NeurIPS 2022, 2022, [Online]. Available: http://papers.nips.cc/paper\_files/paper/2022/hash/a3a7387e49f4de290c23beea2dfcdc75-Abstract-Conference.html.
[33]
M. Pan et al., “Preference optimization for combinatorial optimization problems,” in Forty-second international conference on machine learning, ICML 2025, 2025, [Online]. Available: https://proceedings.mlr.press/v267/pan25e.html.
[34]
Z. Fang, D. Wang, J. Chen, J. Wang, and Z. Zhang, UCPO: A universal constrained combinatorial optimization method via preference optimization,” in Fortieth AAAI conference on artificial intelligence, thirty-eighth conference on innovative applications of artificial intelligence, sixteenth symposium on educational advances in artificial intelligence, AAAI 2026, 2026, pp. 36900–36908, doi: 10.1609/AAAI.V40I43.41017.
[35]
Z. Liao, J. Chen, D. Wang, Z. Zhang, and J. Wang, BOPO: Neural combinatorial optimization via best-anchored and objective-guided preference optimization,” in Forty-second international conference on machine learning, ICML 2025, 2025, [Online]. Available: https://proceedings.mlr.press/v267/liao25a.html.
[36]
H. Ye, J. Wang, H. Liang, Z. Cao, Y. Li, and F. Li, GLOP: Learning global partition and local construction for solving large-scale routing problems in real-time,” in Thirty-eighth AAAI conference on artificial intelligence, AAAI 2024, thirty-sixth conference on innovative applications of artificial intelligence, IAAI 2024, fourteenth symposium on educational advances in artificial intelligence, EAAI 2014, 2024, pp. 20284–20292, doi: 10.1609/AAAI.V38I18.30009.
[37]
J. Ma, W. Pan, Y. Li, and J. Yan, COExpander: Adaptive solution expansion for combinatorial optimization,” in Forty-second international conference on machine learning, ICML 2025, 2025, [Online]. Available: https://proceedings.mlr.press/v267/ma25r.html.
[38]
S. Zhou, Y. Ding, C. Zhang, Z. Cao, and Y. Jin, “DualOpt: A dual divide-and-optimize algorithm for the large-scale traveling salesman problem,” in Thirty-ninth AAAI conference on artificial intelligence, thirty-seventh conference on innovative applications of artificial intelligence, fifteenth symposium on educational advances in artificial intelligence, AAAI 2025, 2025, pp. 27178–27186, doi: 10.1609/AAAI.V39I25.34926.
[39]
D. Drakulic, S. Michel, and J.-M. Andreoli, GOAL: A generalist combinatorial optimization agent learner,” in The thirteenth international conference on learning representations, ICLR 2025, 2025, [Online]. Available: https://openreview.net/forum?id=z2z9suDRjw.
[40]
W. Pan, H. Xiong, J. Ma, W. Zhao, Y. Li, and J. Yan, UniCO: On unified combinatorial optimization via problem reduction to matrix-encoded general TSP,” in The thirteenth international conference on learning representations, ICLR 2025, 2025, [Online]. Available: https://openreview.net/forum?id=yEwakMNIex.
[41]
Y. Li et al., “Unify ML4TSP: Drawing methodological principles for TSP and beyond from streamlined design space of learning and search,” in The thirteenth international conference on learning representations, ICLR 2025, 2025, [Online]. Available: https://openreview.net/forum?id=grU1VKEOLi.
[42]
R. M. Karp, “Reducibility among combinatorial problems,” in Proceedings of a symposium on the complexity of computer computations, 1972, pp. 85–103, doi: 10.1007/978-1-4684-2001-2\_9.
[43]
D. J. Rosenkrantz, R. E. Stearns, and P. M. L. II, “An analysis of several heuristics for the traveling salesman problem,” SIAM J. Comput., vol. 6, no. 3, pp. 563–581, 1977, doi: 10.1137/0206041.
[44]
Anatoliy. I. Serdyukov, “Some extremal bypasses in graphs,” Upravliaemie Systemy, vol. 17, pp. 76–79, 1978.
[45]
A. R. Karlin, N. Klein, and S. Oveis Gharan, “A (slightly) improved approximation algorithm for metric TSP,” in STOC ’21: 53rd annual ACM SIGACT symposium on theory of computing, 2021, pp. 32–45, doi: 10.1145/3406325.3451009.
[46]
D. L. Applegate, R. E. Bixby, V. Chvatál, and W. J. Cook, The traveling salesman problem: A computational study. Princeton University Press, 2006.
[47]
S. Arora, “Polynomial time approximation schemes for Euclidean traveling salesman and other geometric problems,” J. ACM, vol. 45, no. 5, pp. 753–782, 1998, doi: 10.1145/290179.290180.
[48]
H. N. Gabow, Implementation of algorithms for maximum matching on nonbipartite graphs,” PhD thesis, Stanford University, USA, 1973.
[49]
J. Edmonds and E. L. Johnson, “Matching, Euler tours and the Chinese postman,” Math. Program., vol. 5, no. 1, pp. 88–124, 1973, doi: 10.1007/BF01580113.
[50]
R. Duan, S. Pettie, and H.-H. Su, “Scaling algorithms for weighted matching in general graphs,” ACM Trans. Algorithms, vol. 14, no. 1, pp. 8:1–8:35, 2018, doi: 10.1145/3155301.
[51]
M. de Berg, O. Cheong, M. van Kreveld, and M. Overmars, Computational geometry: Algorithms and applications, 3rd ed. Springer Berlin Heidelberg, 2008.
[52]
M. Karpinski, M. Lampis, and R. Schmied, “New inapproximability bounds for TSP,” J. Comput. Syst. Sci., vol. 81, no. 8, pp. 1665–1677, 2015, doi: 10.1016/J.JCSS.2015.06.003.
[53]
J. Ma, W. Pan, Y. Li, and J. Yan, ML4CO-bench-101: Benchmark machine learning for classic combinatorial problems on graphs,” in The thirty-ninth annual conference on neural information processing systems datasets and benchmarks track, 2025, [Online]. Available: https://openreview.net/forum?id=ye4ntB1Kzi.
[54]
G. Reinelt, TSPLIB - A traveling salesman problem library,” INFORMS J. Comput., vol. 3, no. 4, pp. 376–384, 1991, doi: 10.1287/IJOC.3.4.376.
[55]
B. Hudson, Q. Li, M. Malencia, and A. Prorok, “Graph neural network guided local search for the traveling salesperson problem,” in The tenth international conference on learning representations, ICLR 2022, 2022, [Online]. Available: https://openreview.net/forum?id=ar92oEosBIg.
[56]
Z. Sun and Y. Yang, DIFUSCO: Graph-based diffusion solvers for combinatorial optimization,” in Advances in neural information processing systems 36: Annual conference on neural information processing systems 2023, NeurIPS 2023, 2023, [Online]. Available: http://papers.nips.cc/paper\_files/paper/2023/hash/0ba520d93c3df592c83a611961314c98-Abstract-Conference.html.
[57]
A. A. Hagberg, D. A. Schult, and P. J. Swart, “Exploring network structure, dynamics, and function using NetworkX,” in Proceedings of the 7th python in science conference (SciPy2008), Aug. 2008, pp. 11–15, doi: 10.25080/TCWV9851.

  1. Without the triangle inequality, TSP is known to be inapproximable, i.e., no polynomial-time algorithm can achieve a finite approximation ratio for non-metric TSP, unless P=NP [13]. Unfortunately, this hardness persists even when predictions with arbitrarily small error are available, see Appendix 11.3.↩︎

  2. One can also solve the problem in time \(O(n^{2.5}\log W)\) where \(W\) is the largest integer weight [50].↩︎

  3. https://zenodo.org/records/20283463↩︎

  4. https://github.com/eleonoravercesi/tour_from_neural_predictions↩︎