Как работает генератор расписания ЗамУвр
⚙️ Как работает генератор расписания ЗамУвр
Чтобы расписание получалось качественным, система опирается на два уровня правил.
🔒 Жёсткие условия (гарантированно соблюдаются):
- учитель не может вести два урока одновременно
- кабинет не может быть занят двумя классами в одно время
- рабочая нагрузка педагога не превышает установленных норм
- указанные предметы не ставятся последним уроком
- расписание «прижимается» к началу учебного дня
📌 Гибкие условия (максимально возможное соблюдение):
- сложные уроки не попадают в конец дня
- избегается три тяжёлых предмета подряд
- учитываются пожелания «до/после обеда»
- сдвоенные уроки ставятся в соответствии с настройками
- нагрузка распределяется равномерно по дням недели
🎯 Результат: жёсткие правила не нарушаются, гибкие — реализуются с максимальной точностью.

📋 Рекомендации для корректной работы алгоритмов
Чтобы система учитывала все ограничения и пожелания, важно правильно заполнить базу:
✅ Учителя — указывайте реальные часы работы и дни присутствия
✅ Кабинеты — добавляйте не только учебные классы, но и актовый зал, спортзал, мастерские, библиотеку. Для каждого помещения указывайте, какие предметы в нём можно проводить (один кабинет может использоваться для нескольких предметов)
✅ Предметы — настраивайте параметры: «не ставить последним», «до/после обеда», сдвоенные уроки, сложность предмета, деление на подгруппы
✅ Нагрузка — проверяйте, чтобы недельная нагрузка по классам не превышала нормы
✅ Временные сетки — настройте длительность уроков и перемен, для разных смен создавайте отдельные сетки
💡 Важно: если ресурсов школы объективно недостаточно, система сделает всё возможное, но небольшие пробелы в расписании могут возникнуть. Мы рекомендуем честно заполнять данные, чтобы алгоритм работал корректно.Чем точнее исходные данные, тем лучше алгоритм учтёт все требования.