Learning to Perform Local Rewriting for Combinatorial Optimization
About
Search-based methods for hard combinatorial optimization are often guided by heuristics. Tuning heuristics in various conditions and situations is often time-consuming. In this paper, we propose NeuRewriter that learns a policy to pick heuristics and rewrite the local components of the current solution to iteratively improve it until convergence. The policy factorizes into a region-picking and a rule-picking component, each parameterized by a neural network trained with actor-critic methods in reinforcement learning. NeuRewriter captures the general structure of combinatorial problems and shows strong performance in three versatile tasks: expression simplification, online job scheduling and vehicle routing problems. NeuRewriter outperforms the expression simplification component in Z3; outperforms DeepRM and Google OR-tools in online job scheduling; and outperforms recent neural baselines and Google OR-tools in vehicle routing problems.
Related benchmarks
| Task | Dataset | Result | Rank | |
|---|---|---|---|---|
| Capacitated Vehicle Routing Problem | CVRP N=100 10,000 instances (test) | Objective Value16.1 | 28 | |
| Capacitated Vehicle Routing Problem | CVRP N=20 10,000 instances (test) | Objective Value6.15 | 26 | |
| Capacitated Vehicle Routing Problem | CVRP n=100 (10k instances) | Optimality Gap345 | 21 | |
| Capacitated Vehicle Routing Problem | CVRP N=50 10,000 instances (test) | Objective Value10.51 | 16 | |
| Capacitated Vehicle Routing Problem | Uniform CVRP N=1000 (test) | Cost136.3 | 11 | |
| Capacitated Vehicle Routing Problem | Uniform CVRP N=2000 (test) | Cost257.6 | 11 | |
| Capacitated Vehicle Routing Problem | Uniform CVRP N=500 (test) | Total Cost73.6 | 11 |