Авторасписание

Как запустить автоматическую расстановку уроков, выбрать режим расчёта, разобрать нерасставленные нагрузки и применить результат.

Авторасписание расставляет уроки из нагрузки с учётом ограничений. Сначала вы получаете результат расчёта и проверяете его. Расписание меняется только после нажатия «Применить».

Где находится

Боковое меню → «Сетка уроков» → нижняя панель, вкладка «Нагрузка» → кнопка «Авторасписание». Подсказка на ней — «Запустить автосоставление расписания». В представлении «Детально» та же кнопка стоит в правой панели, в блоке «Нагрузка», и называется «Авторасписание для…».

Подготовить расписание перед запуском

  1. Откройте раздел «Звонки» и убедитесь, что сетка звонков заполнена: расчёт ставит уроки только в существующие звонки.
  2. Откройте «Ограничения» и проверьте доступность ресурсов, лимиты уроков и окон, дневные максимумы предметов. У классов также проверьте вкладку «Сложность по дням».
  3. Откройте раздел «Нагрузка» и проверьте, что у каждой нагрузки назначены учитель и кабинет, а часы распределены по неделям цикла.
  4. Вернитесь в «Сетка уроков» и откройте на нижней панели вкладку «Готовность». Там видно, какие пункты ещё не закрыты. Подробнее о вкладке читайте на странице «Ошибки и готовность».

Если появилось «Перед расчётом проверьте сложность по дням», перейдите по названию класса и исправьте указанные настройки. Для обязательного профиля должна быть задана сложность всей нагрузки. При сообщении «Не удалось проверить настройки сложности» нажмите «Повторить».

Проверка дневных лимитов предметов

Дневные лимиты проверяются при открытии окна, смене режима или фильтров и изменении данных расписания. По кнопке «Рассчитать» проверка повторяется до начала расчёта.

СообщениеЧто означает и что делать
«Проверяем дневные лимиты предметов…»Дождитесь результата: «Рассчитать» пока недоступно
«Запуск расчёта недоступен»Неподвижные уроки уже превышают максимум. В сообщении указаны класс, предмет, неделя, день, количество уроков и лимит. Исправьте расстановку, закрепления или ограничение
«Все уроки могут не поместиться»Доступных дней недостаточно для всей нагрузки при заданном максимуме. Если нет блокирующих ошибок, можно получить частичную расстановку
«Не удалось проверить дневные лимиты предметов»Нажмите «Повторить проверку». Пока проверка не завершится успешно, запуск недоступен

Неподвижны закреплённые уроки и уроки вне области пересчёта. Выбранные для сохранения на месте уроки тоже остаются неподвижными. В режиме «Заполнить пустые места» к ним относятся все уже расставленные уроки. «Пересобрать заново» позволяет перенести незакреплённые уроки внутри выбранной области и тем самым устранить превышение.

Например, при максимуме 1 шесть уроков предмета не поместятся в пять учебных дней. Можно рассчитать частичный результат либо изменить дневной максимум или доступность перед запуском.

Закрепить уроки, которые нельзя двигать

  1. Нажмите правой кнопкой мыши по уроку в сетке.
  2. Выберите «Закрепить урок» — на уроке появится значок замка.
  3. Чтобы снять закрепление, в том же меню выберите «Освободить урок».
  4. Закрепляйте уроки до запуска: в режиме «Пересобрать заново» они останутся на своих местах.

Выбрать режим расчёта

  1. На нижней панели откройте вкладку «Нагрузка». Если расписание в статусе «Активное», кнопка «Авторасписание» бледная и не нажимается. Оба выхода из этой заморозки разобраны на странице «Черновик и активное расписание».
  2. Нажмите «Авторасписание» — откроется окно «Автосоставление расписания».
  3. В блоке «Как составить» выберите «Заполнить пустые места», если расставленные уроки должны остаться на месте и нужно только дозаполнить пустоты.
  4. Выберите «Пересобрать заново», если текущую расстановку нужно снять и собрать заново ради лучшего качества. В окне появится предупреждение «Текущая расстановка будет снята и собрана заново.».
  5. В блоке «Что пересчитать» выберите нужные классы, учителей или предметы.
  6. Чтобы рассчитать весь план, снимите отбор кнопкой «Сбросить фильтр», если он задан.

Расчёт охватывает все недели цикла, независимо от выбранной над сеткой недели. Уроки вне области пересчёта остаются на месте в обоих режимах.

Проверить блок «Заведомо не встанет»

  1. Если до расчёта нашлись безнадёжные нагрузки, в окне появится раскрытый блок «Заведомо не встанет: N».
  2. Прочитайте строки списка. Сверху стоит нагрузка (предмет, класс, учитель), снизу — причина и что с ней делать.
  3. Типичные причины: «У нагрузки не назначен ни один кабинет», «Недельная норма (N ур.) больше доступных позиций недели (M) — уменьшите норму или расширьте доступность», «Спарка из N уроков не помещается ни в один день (максимум подряд — M)».
  4. Блок грузится отдельным запросом по всему расписанию, независимо от выбранной недели цикла и режима расчёта. Если запрос не прошёл, блок молча не показывается.
  5. Поэтому пустой блок не всегда означает, что безнадёжных нагрузок нет. Если сомневаетесь, проверьте «Нагрузку» и «Ограничения» вручную.
  6. Нажмите «Закрыть», исправьте причины в разделах «Нагрузка» и «Ограничения» и откройте «Авторасписание» снова.

Рассчитать расстановку

  1. Нажмите «Рассчитать». После повторной проверки дневных лимитов окно перейдёт на шаг прогресса, если запуск разрешён.
  2. Следите за этапами «Сборка задачи», «Составление», «Сохранение», «Готово» и процентом выполнения.
  3. Дождитесь шага результата — появятся плитки «Создано», «Переставлено», «Удалено», «Без изменений», «Не расставлено».
  4. Проверьте сводную строку «Размещено N из M», «Окна:» и «Время:».
  5. Помните: на этом шаге расписание ещё не изменилось. Расчёт остаётся предпросмотром, пока вы не нажмёте «Применить».

Разобрать «Не удалось расставить»

  1. Если плитка «Не расставлено» больше нуля, нажмите на строку «Не удалось расставить: N» — блок раскроется.
  2. Первая часть строки говорит, какая нагрузка не встала. Вторая часть — причина.
  3. Формулировки причин такие: «У урока нет ни одной допустимой позиции — проверьте доступность и сетку звонков», «Все подходящие позиции заняты закреплёнными уроками — открепите часть уроков или освободите день», «Мешают лимиты уроков в день — ослабьте лимиты или перенесите часть нагрузки», «Ни один кабинет нагрузки не вмещает урок (N чел.) — добавьте кабинет побольше или уменьшите численность», «Свободных позиций не осталось: класс и учитель заняты на всех допустимых позициях».
  4. Под причиной может стоять диагностика вида «Свободных позиций: 3 из 40». Рядом идёт разбивка: занятость учителя, занятость классов, нет свободного кабинета, лимиты уроков в день. Она подсказывает, какое ограничение снимать.
  5. Строка «Урок в спарке: требуется несколько позиций подряд» означает, что уроку нужны соседние звонки в одном дне. О спарках читайте на странице «Недели цикла и спаренные уроки».
  6. Если среди причин указана нехватка времени расчёта, нажмите «Заново» и рассчитайте повторно.
  7. Текст «Не хватило времени расчёта — запустите пересчёт ещё раз» показывается, когда свободных позиций не было совсем. Текст «Свободные позиции были (N) — не хватило времени расчёта, запустите пересчёт ещё раз» — когда часть позиций нашлась, но солвер не успел их использовать.

Применить результат

  1. Нажмите «Применить» — появится сообщение «Расписание применено», окно закроется, уроки встанут в сетку.
  2. Результат расчёта не пропадает, если закрыть окно без применения. Он хранится на сервере, и при следующем открытии «Автосоставление расписания» вы снова попадёте на шаг с плитками того же расчёта.
  3. Если результат не устраивает, нажмите «Заново» и рассчитайте с другим режимом. Прежняя сводка стирается безвозвратно: вернуться к её плиткам после «Заново» нельзя.
  4. Сообщение «Данные расписания изменились — перезапустите preview» означает, что расписание за время расчёта изменили вы сами или другой пользователь.
  5. Сообщения «Истёк срок прогона — перезапустите preview» и «Прогон устарел — перезапустите preview» говорят о другом: расчёт протух по времени хранения, даже без единой правки расписания. В обоих случаях нажмите «Заново» и повторите расчёт.
  6. Применённую расстановку можно откатить. Единственный способ разобран на странице «История изменений», раздел «Отменить прогон авторасписания».
  7. После «Заполнить пустые места» запустите расчёт ещё раз — повторный запуск дорешает остаток.

Свернуть расчёт в фон или отменить его

  1. На шаге прогресса нажмите «Свернуть в фон» — окно закроется, а расчёт продолжится.
  2. Кнопка на вкладке «Нагрузка» сменится на «Авторасписание идёт», покажет процент и получит подсказку «Идёт расстановка — нажмите, чтобы открыть прогресс».
  3. Нажмите на эту кнопку, чтобы вернуться к прогрессу и дождаться результата.
  4. Чтобы остановить расчёт, нажмите «Отменить». Если окно осталось на шаге прогресса, отмена не сработала и расчёт всё ещё идёт. Не закрывайте расписание, считая его остановленным.
  5. Если расчёт завершился сбоем на сервере, на шаге прогресса появится блок с текстом причины. Когда сервер текст не прислал, в блоке стоит «Авторасписание завершилось с ошибкой».

Поля

ПолеЧто задаётОграничения
«Что пересчитать»Область расчёта по классам, учителям и предметамПустой отбор означает всё расписание. При открытии из «Детально» подставляется текущий класс, учитель или кабинет; отбор можно сбросить
«Как составить»Режим расчёта — обязательный выбор одного из двух вариантовПо умолчанию выбран «Заполнить пустые места»
«Заполнить пустые места»Режим по умолчанию: расставленные уроки остаются на месте, добавляется только недостающееПодсказка: «Расставленные уроки останутся на месте, добавится только недостающее. Повторный запуск дорешает остаток.»
«Пересобрать заново»Снимает текущую расстановку и собирает её заново для лучшего качества, закреплённые уроки не трогаетПодсказка: «Текущая расстановка снимается и собирается заново для лучшего качества. Закреплённые уроки не трогаются.». При выборе показывает предупреждение о снятии текущей расстановки
«Заведомо не встанет: N»Раскрывающийся блок с безнадёжными нагрузками, найденными до расчётаПоказывается, только если такие нагрузки найдены. По умолчанию раскрыт
«Не удалось расставить: N»Раскрывающийся блок с нерасставленными нагрузками на шаге результатаПоказывается, только если что-то не встало. По умолчанию свёрнут

Частые вопросы

В шапке страницы «Сетка уроков» нет ни одной кнопки авторасписания.
  • Почему: Точка входа стоит не в шапке, а в нижней панели — на вкладке «Нагрузка», рядом с кнопкой добавления нагрузки.
  • Что делать: Откройте нижнюю панель, перейдите на вкладку «Нагрузка» и нажмите «Авторасписание».
Расчёт закончился, показаны плитки с числами, но в сетке уроков ничего не изменилось.
  • Почему: «Рассчитать» строит только предпросмотр. Расписание не трогается до подтверждения.
  • Что делать: Нажмите «Применить». Если вы просто закрыли окно, результат не пропадает: он хранится на сервере и снова появится при следующем открытии, пока не истёк срок хранения.
После применения режима «Пересобрать заново» уроки, которые вы аккуратно расставили вручную, оказались в других местах.
  • Почему: Этот режим пересобирает выбранную область. На местах остаются закреплённые уроки и уроки вне области пересчёта.
  • Что делать: До запуска закрепите нужные уроки через правый клик и пункт «Закрепить урок». Если уже применили, откатите операцию, как описано на странице «История изменений».
Плитка «Не расставлено» больше нуля, хотя свободные места в сетке видны.
  • Почему: Позиции свободны у одного участника урока, но заняты у другого: у учителя, класса или кабинета. Ещё их могут перекрывать лимиты или нехватка мест в кабинете.
  • Что делать: Раскройте «Не удалось расставить: N» и прочитайте строку диагностики «Свободных позиций: N из M». Разбивка по причинам покажет, какое ограничение ослабить.
При нажатии «Применить» появляется «Истёк срок прогона — перезапустите preview» или «Прогон устарел — перезапустите preview», хотя в расписании ничего не меняли.
  • Почему: Результат расчёта хранится ограниченное время и протухает сам по себе, даже без единой правки расписания. Похожее сообщение «Данные расписания изменились — перезапустите preview» означает другое: расписание за время расчёта поменяли вы сами или другой пользователь.
  • Что делать: Нажмите «Заново» и рассчитайте повторно. Не держите готовый результат неприменённым подолгу.

Дальше

  • Звонки — заполните сетку звонков до запуска расчёта.
  • Ограничения — доступность ресурсов и лимиты, которые расчёт не нарушает.
  • Нагрузка — учитель, кабинет и часы по неделям, без которых нагрузка не расставится.
  • Недели цикла и спаренные уроки — что означает «Урок в спарке: требуется несколько позиций подряд».

Дальше проверьте результат на вкладке «Готовность». Если нужно, отмените прогон через «Историю изменений». Готовое расписание публикуется в разделе «Публикации».