Optimal scheduling of track maintenance activities for railway networks