An Improved Genetic Algorithm with Recurrent Search for the Job-Shop Scheduling Problem