What does the project do?
A dynamic timetabling system which adapts to how long teachers need for their lessons. Teachers will book in the length of lessons in advance, and the system will automatically schedule these lessons into place with a fully dynamic timetable. This helps teachers make the best use of the time available by scheduling lessons of the most appropriate length, and automates some of the complexities of timetabling.
How is it made?
The project uses a genetic algorithm to iterate through timetables and create progressively better timetables. While this isn't great, it does somewhat work. The web stuff is in some nice simple bootstrap and django.
What have I learnt?
- Reducing scope for large projects.
- Report writing (being more brief in future!)
- Project management
- Writing maintainable code