Automatic scheduling and Teaching plans
Composing the schedule is difficult administrative work, and there’s no open-source algorithms for it. So our automatic scheduling is a unique solution, having no analogs in the world today. We use a genetic algorithm to make it multipurpose, as if it was created manually by the human being.
We’ve tried a few decisions, but there were hitches with equal distribution of the workload of teachers and students and the need to generate a different schedule every interaction. Moreover, there are variables such as teachers' days off, weekends, public holidays (which are different in different regions). During the production process, another problem was pointed out. We need to have an opportunity to edit the schedule. Therefore, we’ve got the one which takes into account the overwork / non-completion of teachers. Also, the annual schedule is duplicated in the current one which can be edited, and saved back to the annual.