School Timetabling

A fully automated school timetabling system where teachers choose dynamically how long they need for each lesson.

🧑‍💻

A-Level Coursework

🗓️

Sep 2021 - May 2022

⏱️

250 hours

Big Project

Solo

Coursework

Python

Django

HTML

Bootstrap

SQL

GitHub

Links:  

Read the Report View on GitHub

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?