The Transformer Network for the Traveling Salesman Problem
About
The Traveling Salesman Problem (TSP) is the most popular and most studied combinatorial problem, starting with von Neumann in 1951. It has driven the discovery of several optimization techniques such as cutting planes, branch-and-bound, local search, Lagrangian relaxation, and simulated annealing. The last five years have seen the emergence of promising techniques where (graph) neural networks have been capable to learn new combinatorial algorithms. The main question is whether deep learning can learn better heuristics from data, i.e. replacing human-engineered heuristics? This is appealing because developing algorithms to tackle efficiently NP-hard problems may require years of research, and many industry problems are combinatorial by nature. In this work, we propose to adapt the recent successful Transformer architecture originally developed for natural language processing to the combinatorial TSP. Training is done by reinforcement learning, hence without TSP training solutions, and decoding uses beam search. We report improved performances over recent learned heuristics with an optimal gap of 0.004% for TSP50 and 0.39% for TSP100.
Related benchmarks
| Task | Dataset | Result | Rank | |
|---|---|---|---|---|
| Traveling Salesman Problem | TSP50 | Optimality Gap0.31 | 58 | |
| Traveling Salesman Problem | TSP-100 | Optimality Drop1.42 | 53 | |
| Traveling Salesperson Problem | TSP-100 | Solution Length7.76 | 42 | |
| Traveling Salesman Problem | Euclidean TSP N=50 | Optimal Tour Length5.69 | 26 | |
| Traveling Salesperson Problem | TSP N=100 (test) | Optimality Gap0.46 | 21 | |
| Traveling Salesperson Problem | TSP N=200 (Generalization (128 instances)) | Optimality Gap5.12 | 19 | |
| Traveling Salesman Problem | TSP-50 | Gap0.31 | 15 | |
| Traveling Salesperson Problem | TSP N=500 Generalization (128 instances) | Optimality Gap36.14 | 14 | |
| Traveling Salesperson Problem | TSP N=1000 Generalization (128 instances) | Optimality Gap76.21 | 14 | |
| Traveling Salesman Problem | Euclidean TSP N=100 | Objective Value7.88 | 10 |