Thank you for the support and please see our responses to outlined matters (1/2)
We deeply appreciate the reviewer for considering raising the score. Thank you for acknowledging that our paper introduces interesting ideas, particularly the k-opt MDP formulation (besides presenting the first flexible k-opt solver, we also rethink the constraint handling by proposing GIRE and present the effective RDS decoder as well as the efficient dynamic data augmentation method). Below we further respond to your outlined matters.
Regarding the solving time detailed in Table 1, we clarify that while our approach did take a long run time for certain cases, such long run time may be exclusive to the commonly used benchmarking setting, i.e., solving a total of 10,000 instances using one GPU only. Hence, all the compared neural solvers share similar long run times (e.g., see the hours and days run times of SOTA baselines DACT and SGBS in our paper and their original papers). Given the limited memory of one GPU (e.g., 11GB for our 2080TI GPU), we need to split all 10,000 instances into smaller batches (e.g., 2000 instances) and run the batch inference in sequential (thus longer run time). **For practical use of our NeuOpt, if users have the flexibility to use multiple GPUs or more powerful GPUs (like the A100 with 80GB memory) or even TPUs, the runtime could be significantly reduced as shown in the added Table below.** Meanwhile, as mentioned by the Reviewer #vydT, the users can choose proper K, T and DA according to the available computation budgets. Lastly, we note that one of the motivations of learning to search (L2S) solvers is to close the optimality gaps as much as possible given enough run time, and our NeuOpt has significantly enhanced the efficiency of existing L2S solvers.
--
Time on TSP100|1GPU (11GB)|2GPU (22GB)|4GPU (44GB)
:-:|:-:|:-:|:-:
NeuOpt (DA=1,T=1k)|17m|8m|5m
NeuOpt (DA=1,T=5k)|1.4h|42m|23m
NeuOpt (DA=1,T=10k)|2.8h|1.4h|45m
NeuOpt (DA=5,T=1k)|1.4h|43m|21m
NeuOpt (DA=5,T=3k)|4.2h|2.2h|1h
NeuOpt (DA=5,T=5k)|7h|3.6h|1.7h
--
Time on CVRP100|1GPU (11GB)|2GPU (22GB)|4GPU (44GB)
:-:|:-:|:-:|:-:
NeuOpt (DA=1,T=1k)|28m|14m|8m
NeuOpt (DA=1,T=5k)|2.3h|1.2h|36m
NeuOpt (DA=1,T=10k)|4.6h|2.3h|1.2h
NeuOpt (DA=5,T=6k) |13.8h|7h|3.3h
NeuOpt (DA=5,T=20k)|1.9d|22h|11h
NeuOpt (DA=5,T=40k)|3.8d|1.8d|22h
--
We follow the recognized benchmark conventions (i.e., also used in the latest DACT, EAS, SBGS, and DIFUSCO papers) that the run time is recorded under the premise that one GPU is used for neural solvers and one CPU is used for traditional solvers. Nevertheless, we acknowledge the inherent challenges of time comparison between neural solvers and traditional solvers given the differences in infrastructure (CPU vs GPU) and programming languages (C vs Python), as mentioned in lines 291-297. We will make this more clear following the suggestions. Compared to LKH-3, our NeuOpt has shown promising performance by achieving lower optimality gaps with relatively shorter run times. And kindly note that our NeuOpt is the first L2S solver to achieve so. We acknowledge that our NeuOpt may not fully outstrip SOTA traditional solvers (i.e., LKH and HGS) that have been developed for more than decades. However, this may also be the case for all existing neural solvers proposed in recent years. We note that our motivation is to unleash the potential of L2S solvers to further push the boundaries of neural solvers. Meanwhile, if we consider the idea of *“No Free Lunch”*, it is fair that no solver could be the best in all situations. We note that our approach does exhibit unique advantages compared to LKH-3 or HGS where our NeuOpt is able to learn and leverage deep patterns directly from data and rely less on domain knowledge regarding the human expertise of the target VRP, thus holding the potential to be swiftly adapted to automatically learn-to-solve more VRP variants (i.e., a generic tool to learn data-driven VRP solvers).