Genetic and memetic algorithms for scheduling railway maintenance activities