Traveling salesman solver