Learning Improvement Heuristics for Solving Routing Problems
About
Recent studies in using deep learning to solve routing problems focus on construction heuristics, the solutions of which are still far from optimality. Improvement heuristics have great potential to narrow this gap by iteratively refining a solution. However, classic improvement heuristics are all guided by hand-crafted rules which may limit their performance. In this paper, we propose a deep reinforcement learning framework to learn the improvement heuristics for routing problems. We design a self-attention based deep architecture as the policy network to guide the selection of next solution. We apply our method to two important routing problems, i.e. travelling salesman problem (TSP) and capacitated vehicle routing problem (CVRP). Experiments show that our method outperforms state-of-the-art deep learning based approaches. The learned policies are more effective than the traditional hand-crafted ones, and can be further enhanced by simple diversifying strategies. Moreover, the policies generalize well to different problem sizes, initial solutions and even real-world dataset.
Related benchmarks
| Task | Dataset | Result | Rank | |
|---|---|---|---|---|
| Traveling Salesman Problem (TSP) | TSP n=100 10K instances (test) | Objective Value7.87 | 52 | |
| Capacitated Vehicle Routing Problem | CVRP N=100 10,000 instances (test) | Objective Value16.17 | 28 | |
| Capacitated Vehicle Routing Problem | CVRP N=20 10,000 instances (test) | Objective Value6.12 | 26 | |
| Traveling Salesman Problem | TSP N=200 | Cost Gap0.0247 | 24 | |
| Capacitated Vehicle Routing Problem | CVRP n=100 (10k instances) | Optimality Gap300 | 21 | |
| Traveling Salesman Problem | TSP N=100 | Cost (%)1.42 | 20 | |
| Traveling Salesman Problem | TSP N=20 10,000 instances (test) | Objective Value3.83 | 16 | |
| Capacitated Vehicle Routing Problem | CVRP N=50 10,000 instances (test) | Objective Value10.54 | 16 | |
| Traveling Salesman Problem | TSP N=50 10,000 instances (test) | Objective Value5.71 | 16 | |
| Traveling Salesperson Problem | TSP n=100 (train) | Objective Value7.83 | 9 |