Timetabler
A timetabling program for educational institutions. Given a set of courses along with their details (class strength, instructors, relevant programs, and so on) as input, and a list of resources available (instructors, classrooms, time slots, etc.), the program generates a feasible timetable, if it exists. Custom constraints can also be given with the input. Each constraint can also be specified weights to signify their importance. The program also has the capability to list soft constraints that could not be satisfied, and to suggest changes in the parameters to make the problem satisfiable. Moreover, it can also complete an existing partial timetable.
Timetabler continues to be developed, and is currently being used for timetabling at IIT Hyderabad.