Skip to content

Lecture Scheduler is a timetable generator for university departments, that allots course lectures/classes to periods across the weekdays in a conflict-free manner, satisfying user-specified preferences and constraints.

License

Notifications You must be signed in to change notification settings

aiktamseel/lecture-scheduler

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 

Repository files navigation

Lecture Scheduler

Lecture Scheduler is a timetable generator for university departments, that allots course lectures/classes to periods across the weekdays in a conflict-free manner i.e. no two classes scheduled at the same time will belong to same section or same teacher. It takes in a list of classes to be scheduled in CSV file format that includes course name, teacher name, and section. It then allots the lectures/classes to various timeslots (day, period) such that minimum number of periods are used in total. The scheduler can optionally also take input for course-class's preferred timeslots and priority of allocation. Moreover, it can also take in teacher-specific timeslot constraints as another CSV file, and ensure these constraints are met.
The script currently uses greedy coloring algorithm but I intent to change it with a backtracking algorithm. Initially. it was written as a Flask app that I later converted into JS with help of Claude.

About

Lecture Scheduler is a timetable generator for university departments, that allots course lectures/classes to periods across the weekdays in a conflict-free manner, satisfying user-specified preferences and constraints.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published