The traveling salesman problem