how to solve tsp problem using genetic algorithm