Genetic algorithms for job shop scheduling problems with alternative routings