Algorithms for Large-scale Travelling Salesman Problems