A direct solution is to try out all the permutations and find out the shortest of all these permutations.
This would be O(n!) time complexity, which implies 10^64 for 50 cities. This is practically useless.
Other approaches attempted at solving the problem include Dynamic Programming, branch and bound, linear programming.
None of them were feasible for number of cities over 500. It has not been determined whether an exact algorithm for TSP that runs in O(1.9999^n) time exists.
So attempts have are made to solve TSP approximately which give sub optimal solutions.
Here we present a few intelligent approaches to solve TSP approximately.