An efficient memetic algorithm for the uncapacitated single allocation hub location problem