Approach to Making a School Timetable Generator in Python

I am trying to make a Timetable Generator for my school, preferably in python, or other Database languages. Can anyone guide on the way to achieve this? What must be used to tackle a problem with such levels of comparisons and logic?

Here is what I have read in other problems and answers to this

  1. Machine Learning
  2. Using a Relational Database with MySQL
  3. Using classes in python and going with the OOP approach

but I don’t find anything that could be a clear approach. I only need a guide to help, and am a beginner in python, but ready to learn any concept that might be necessary.

Any sort of help or guidance is extremely appreciated and needed. Thanks.


Trainer for Machine Learning Course.

Could you give me an small example of what your raw data looks like? And how you’d like it to be processed?

Anecdotally, I’ve found that pandas :panda_face: are quite helpful when it comes to not-very-large schedules. So what scale does your application require?

Scheduling in general is an optimization problem. I think you are not on the right track. You should check TSP+GA for a start. Evolutionary algorithms or LP in general applied to planning.