how to solve tsp problem