Inspiration

The traveling salesman problem is a problem which is both easy to understand and hard to solve. Years back at university I had to solve it with methods like simulated annealing. Nowadays, more powerful methods in Artificial Intelligence are available. One of those methods is Reinforcement Learning, which earned a lot of attention with "AlphaGo" from Google. I adapted the algorithm for Traveling Salesman and it gave me very good solutions in shorter time. It is optimized to take the route with the least traveling time.

What it does

To any given set of six points (easily extendable to more points) it finds the shortest route which goes through all points and ends at the start.

How I built it

I use the typical tools of a data scientist: Jupyter Notebook with Python. I collected data from TomTom API to train the Reinforcement Learning Algorithm on. It was trained to go trough all points and reaching the start again with low costs in terms of traveling time.

Challenges I ran into

At the start there was very slow internet connection which made researching the TomTom API difficult.

Accomplishments that I'm proud of

Reinforcement Learning problems are in my experience not easy to solve. Often, there is a lot of tuning involved and good solutions are found after days of experimentation. However, in this case a solution was found within one day.

What I learned

I was astonished how much can be achieved on one day if there is no other distraction and you can focus on coding. I learned some new technologies from other hackers.

What's next for Traveling Salesman with Reinforcement Learning

I will write a blog post about what I did. As this challenge was quite successful for me, I will start a new project soon and tackle more problems with Reinforcement Learning.

Built With

Share this project:

Updates