An evolutionary algorithm for timetabling problems: csun's math schedule