Encode-Attend-Navigate in Pytorch
Pytorch implementation of RL-based TSP solver.
Project
This is a Pytorch reimplementation of encode-attend-navigate
, which is a Tensorflow-1.x TSP solver (Traveling Salesman Problem) based on Transformer and Reinforcement Learning.
For this reimplementation, I made sure every layers were correctly implemented by testing them, ensuring the outputs were similar with the TF1 implementation.
I also used newer tools (wandb
), and made sure the results can be reproduced by anyone (Colab notebook provided, the network can be trained in 1 hour with a free GPU).
Experience
This was an interesting experience as I’m not very familiar with Tensorflow1.x. I could overcome this weakness through persistent testing.
At first I had difficulties to reproduce the results of the official repository, but eventually I discovered the bug, fixed it and I could reproduce the original results. It’s interesting to see how sensible RL training is !