Applying tabu search to the job-shop scheduling problem