The development of reactive constraint agent for the dynamic timetabling problem