Hi Edward,
I hope this message finds you well. I'm reaching out regarding your recent paper on the diffusion method for TSP. First and foremost, I'd like to commend you on your innovative approach and the clarity of your paper. Your work has certainly contributed significantly to this field.
I've been attempting to replicate your results using the scripts provided in your GitHub repository. While I've been able to closely match most of your reported outcomes, there are a few discrepancies I've encountered, especially in the larger TSP instances.
For example, in the TSP-500 and TSP-1000 instances, my results were very close to yours:
- SL+MCTS for TSP-500: Your result - 16.63, My result - 16.64
- SL+MCTS for TSP-1000: Your result - 23.39, My result - 23.41
- SL+S+2-opt for TSP-500: Your result - 16.65, My result - 16.70
- SL+S+2-opt for TSP-1000: Your result - 23.45, My result - 23.42
- SL+S+2-opt for TSP-10000: Your result - 73.89, My result - 73.83
These variations are minor and within acceptable ranges. However, I am facing a significant challenge with the SL+MCTS method for TSP-10000. According to your paper, the result for this instance is 73.62. In contrast, my replication yields a result of 73.92, which not only deviates notably from your reported outcome but is also less effective than the SL+S+2-opt method, which is unexpected. Despite using the provided script and following the instructions accurately, my results diverge notably from those in your paper. This is quite perplexing, and I'm unsure what might be causing this discrepancy.
For reference, here's the exact command I used:
python -u difusco/train.py --task "tsp" --wandb_logger_name "tsp_diffusion_graph_categorical_tsp10000" --diffusion_type "categorical" --do_test --learning_rate 0.0002 --weight_decay 0.0001 --lr_scheduler "cosine-decay" --storage_path "./data" --training_split "tsp10000_test_concorde.txt" --validation_split "tsp10000_test_concorde.txt" --test_split "tsp10000_test_concorde.txt" --sparse_factor 100 --batch_size 1 --num_epochs 25 --validation_examples 8 --inference_schedule "cosine" --inference_diffusion_steps 50 --ckpt_path "./checkpoint/tsp10000_categorical.ckpt" --resume_weight_only --save_numpy_heatmap
I then used the provided MCTS code for post-processing, but the results were not as expected. Despite multiple attempts at rerunning the scripts for generating the heatmap and conducting the MCTS search, my results are consistently not comparable to those presented in your paper.
I would greatly appreciate any insights or suggestions you might have that could help me align my results more closely with those reported in your paper. Your guidance in this matter would be invaluable.
Thank you for your time and consideration, and I look forward to your response.
Best regards,
Yifan