An ILP based heuristic for a generalization of the post-enrollment course timetabling problem. (December 2016)