
Разбор · Опубликовали 08.10.2026
Планирование загрузки оборудования дописывают агентами с учётом переналадок и узких мест
Срочный заказ можно поставить раньше и всё равно сорвать срок. Пересчёт должен видеть смену оснастки, общий ресурс и уже начатую работу.
Текст написан инженером, который ведёт vibecoding.ru, вместе с машиной агентов · источники и цена подписки проверены 8 октября 2026.
Планирование загрузки оборудования можно доработать отдельным модулем вокруг действующей MES, системы управления производством. Инженер ведёт машину агентов: она пишет код пересчёта по вашим длительностям операций, переналадкам и ограничениям ресурсов. Диспетчер получает новую очередь, видит конфликты и утверждает график.
Повод для такой разработки знаком владельцу цеха: срочный заказ двигают вперёд, а к вечеру он всё равно не готов. Между операциями пришлось менять оснастку, нужный специалист был занят, следующий участок ещё не освободился. Своего клиентского кейса планирования станков у нас нет. Ниже учебный расчёт и правила разработки, которые мы проверили на машине агентов vibecoding.ru.
Не хотите разбираться сами? Внедряем ИИ в ваш бизнес: задачи без лимита, одна цена в месяц, отмена в любой момент.
1. Сумма часов не показывает, какой заказ опоздает.
Сначала отделите загрузку от выполнения обещаний. Если сумма операций меньше смены, работа может поместиться в день. Это ещё не означает, что нужная операция закончится к обещанному часу: важны очередь и переходы между заказами.
Возьмём учебный станок со сменой 08:00–16:00. Перерывы и другие участки в этом расчёте не учитываем. На оснастке X заказ А занимает 180 минут, Б ещё 120. Срочный заказ В требует оснастки Y, занимает 90 минут и должен закончить эту операцию к 14:00. А уже начали, прерывать его нельзя.
Работы всего 390 минут при доступных 480. Но переход с X на Y занимает 45 минут, обратно 30. Если оставить очередь А, Б, В, срочный заказ закончится в 15:15. Если после А поставить В, а затем Б, операция В закончится в 13:15. Для этого придётся вернуться на X, и весь график станет длиннее.
Дополнительная переналадка спасает срок срочной операции.
Источник: учебный расчёт редакции, 08.10.2026. Исходная оснастка X, одинаковая оснастка не требует перехода. Срок относится к операции на этом станке, не к отгрузке заказа. Клиентского замера здесь нет.
Во втором варианте станок занят дольше, зато срочная операция выполнена вовремя. Поэтому задача «сократить переналадки» может привести к другому решению, чем «выполнить срочный заказ». Руководитель задаёт порядок целей: что обязательно сохранить, каким сроком можно пожертвовать и сколько дополнительной переналадки допустимо.
2. Переналадки и узкое место задают очередь вместе.
Одной средней нормы переналадки на заказ мало. После одинаковой оснастки переход может не понадобиться, после другой потребуются подготовка и проверка. В таблице исходных данных нужна длительность конкретного перехода и состояние станка в начале расчёта. Документация PyJobShop показывает именно такую зависимость времени от соседних операций.
Узкое место может находиться за пределами выбранного станка. Если несколько машин передают детали в общую печь, свободная машина ещё не означает, что весь маршрут свободен. То же относится к оператору, комплекту инструмента или измерительному посту, который нужен разным операциям одновременно.
Базовая модель производственного расписания в документации Google OR-Tools запрещает пересечение работ на одной машине и сохраняет порядок операций. В своём модуле этот принцип нужно распространить на действительно общие ресурсы. Если программа видит только станки, она сможет нарисовать график, в котором один наладчик занят в разных местах в одно время.
Каждое ограничение должно получить данные и владельца.
Источник: Google OR-Tools, The Job Shop Problem; PyJobShop, Sequence-dependent setup times; прочитаны 08.10.2026. Перечень владельцев и производственных проверок составлен редакцией.
Неизвестную длительность нельзя молча заменить догадкой модели. Модуль должен показать, какие данные отсутствуют, и остановить расчёт затронутой части графика либо явно пометить согласованное допущение. Иначе точные часы на экране скроют неточную норму в основании.
3. Агенту поручают код пересчёта по записанным правилам.
Формулировка «оптимизация производства» не задаёт, какие решения разрешены. В файле правил нужно записать: начатые операции сохраняем; недоступные ресурсы исключаем; очередь подтверждённого участка меняем только с разрешения; при невыполнимом сроке показываем конфликт. Такой документ и есть основа постановки задачи агенту.
Здесь важно разделить разработку и ежедневный расчёт. Агент пишет и исправляет программу. Сама программа получает структурированные данные и рассчитывает варианты по заданным ограничениям. Производственный график не должен зависеть от того, как чат в этот раз пересказал список заказов. Правила для ИИ-агента описывают также доступ к данным и условия приёмки кода.
Первую версию можно строить на согласованной выгрузке из действующей системы. Тогда проще проверить, что одинаково поняты номера операций, единицы времени, статусы и календарь. Для разработки подходят обезличенные примеры. Передачу рабочих данных и права подключения к MES согласуют отдельно; полный доступ агенту не является условием пересчёта.
Модуль проходит от исходных данных до утверждённой версии графика.
Источник: редакционная спецификация модуля, 08.10.2026. Это предлагаемый объём постановки, а не перечень возможностей готового продукта.
Если за время расчёта станок остановили или начали следующую операцию, вариант уже устарел. Перед утверждением модуль сравнивает версии исходных данных и предлагает пересчёт. Расписание, которое было допустимым на старой выгрузке, нельзя автоматически применять к новому состоянию цеха.
4. Приёмка проверяет конфликты и причины сдвига.
В демонстрации легко показать красивую очередь, где все заказы помещаются. Принимать модуль нужно на ситуациях, из-за которых его заказывают: срочная работа, сломанный станок, занятый наладчик и отсутствующая норма. Для каждой ситуации диспетчер заранее описывает допустимый результат.
Проверка результата должна читать интервалы, ресурсы и связи операций, а не смотреть, что программа завершилась без ошибки. Полезно поручить проверку другому исполнителю, который не писал расчёт. Условия проверки и ответственности за ошибки задают до выпуска: кто принимает код, кто утверждает график и кто может передавать его в рабочую систему.
Отдельно проверяют отрицательный ответ. Если все подходящие машины заняты до срока, программа должна показать невыполнимое условие. Если расчёт остановлен по лимиту времени, найденный вариант нельзя назвать лучшим возможным без подтверждения. В обоих случаях руководителю нужен статус и причина, чтобы решить вопрос со сроком, мощностью или приоритетом.
Приёмочные сценарии включают случаи, где обещание выполнить нельзя.
Источник: редакционные сценарии приёмки, 08.10.2026. Первый сценарий проверяется учебной арифметикой этой статьи; остальные требуют данных конкретного производства.
Вернёмся к учебному В: сам по себе ранний конец операции ещё не доказывает пригодность графика. Приёмка должна подтвердить обратный переход на X, окончание Б в пределах смены и сохранение А. Так локальное спасение срочного заказа проверяют вместе с последствиями для очереди.
5. Правило после поломки закрепляют проверкой.
Наш опыт здесь относится к разработке. На карте нашей машины видны код, документация и правила, по которым инженер ведёт агентов. Этот опыт объясняет, как вести доработку, но не доказывает снижение простоя станков. Производственный эффект придётся измерить на вашем участке.
Почему мало однажды написать правильный документ? Новый путь сохранения может забыть поле, правка интерфейса может разойтись с описанием, проверка может не покрыть реальный ответ программы. Такие случаи уже были у vibecoding.ru. После них меняли не только код, но и условие, которое следующая правка обязана пройти.
В курсе агентной разработки есть урок «Файл правил целиком». Для планировщика его практический смысл такой: правило «переналадка зависит от пары операций» должно попасть и в описание, и в расчёт, и в проверку. Исправление только подписи на экране не устранит пропущенный переход.
Поломки нашей машины превращались в проверяемые правила.
30.07
Экран оставался по старому адресу после переезда документа. Ввели проверку связи экрана с существующим документом и правилом адреса.
31.07
Описание обложки терялось на части путей публикации. Сохранение полей свели к общему преобразованию и добавили проверки полноты.
24.09
Страницы новостей падали при зелёных тестах: новое поле ответа не входило в описание допустимого ответа. Исправили описание и добавили сверку фактического ответа с ним.
Источник: журналы разработки vibecoding.ru, записи 30.07, 31.07 и 24.09.2026, прочитаны 08.10.2026. Это поломки нашей машины, не производственные кейсы клиентов.
В цехе такая петля начинается с факта: план поставил переход без наладчика, диспетчер поправил его вручную. Причину записывают, инженер добавляет ограничение общего ресурса, приёмка повторяет этот сценарий. Следующие ручные изменения покажут, сработало правило или осталась другая причина. Без возврата факта модуль продолжит уверенно воспроизводить старую ошибку.
Что и как мы проверяли
| Факт | Что известно | Проверено |
|---|---|---|
| Производственный кейс | Собственного клиентского кейса загрузки оборудования нет. Расчёт станка учебный, поломки относятся к разработке vibecoding.ru. | 2026-10-08 |
| Механика расписания | Прочитаны первичные документы Google OR-Tools о порядке операций и PyJobShop о переходах между ними. | 2026-10-08 |
| Учебные часы | Вручную сверены обе очереди, суммы работы и переходов, срок В и резерв смены. | 2026-10-08 |
| Наша машина | Прочитаны публичные /open и /agentic-engineering, исходные записи журналов с датами поломок. | 2026-10-08 |
| Цена подписки | На живой /services 08.10.2026 тариф «Один проект» стоит 250 000 ₽/мес. Это не смета планировщика. | 2026-10-08 |
6. Первый модуль проверяют рядом с действующим графиком.
Начните с участка, где конфликт уже можно показать на заказах и календаре. На первом этапе модуль получает копию данных и считает рядом с действующим графиком. Диспетчер сравнивает варианты; автоматическая запись в рабочую систему пока не нужна. Это позволяет отделить ошибку расчёта от ошибки интеграции.
Смотрите не на количество сгенерированного кода. Сравнивайте обещанный и фактический конец операции, плановые и фактические переналадки, ручные изменения графика и их причины. Если новая очередь чаще меняет подтверждённые работы без необходимости, это тоже результат проверки, даже когда срочный заказ спасён.
Если ограничения и нормы не записаны, первая задача состоит в их сборе. Если они есть, а действующая MES не умеет нужный пересчёт, можно заказать отдельный модуль вокруг неё. Агентная разработка ускоряет написание и исправление кода; согласование производственных правил, качество данных и приёмку она не отменяет.
До старта разработки согласуйте результат первой итерации.
Источник: редакционная постановка первой итерации, 08.10.2026. Состав уточняется после разбора действующей системы.
На странице разработки по подписке тариф «Один проект» стоит 250 000 ₽ в месяц, проверено 8 октября 2026. Это поток разработки, а не обещание готового планировщика за эту сумму или за месяц. Для обсуждения первой задачи подготовьте пример сорванной очереди, выгрузку и список запретов. С ними можно обсудить задачу планировщика.
7. Частые вопросы
Нужно ли менять MES ради пересчёта загрузки?+
Нет, если действующая система позволяет получить нужные данные и согласовать передачу результата. Начать можно с отдельного расчёта на выгрузке. Необходимость подключения через API и записи обратно выясняют после проверки первой версии.
Можно ли оставить исходные данные в Excel?+
Да, как источник для первой версии, если у таблицы понятны поля, единицы времени и порядок обновления. Но одна таблица с суммой часов не описывает порядок операций, переходы оснастки и общие ресурсы. Их нужно добавить в данные и правила.
ИИ будет каждый день решать, какой заказ поставить первым?+
В описанном подходе агент разрабатывает код. Варианты рассчитывает программа по согласованным ограничениям; диспетчер утверждает график. Для пояснения вариантов можно отдельно добавить ИИ, но пояснение не заменяет проверку их допустимости.
Что делать, если нормы операций неточны?+
Отделить известные значения от предположений и согласовать, где допустим расчёт по ним. Затем сравнивать план с фактом и обновлять нормы. Разработка не устраняет разброс длительностей сама по себе; точное время на экране ещё не гарантирует точное время в цехе.
Можно ли принять планировщик, если все сроки выполнить невозможно?+
Да, если приёмка предусматривает такой результат: модуль называет конфликт и затронутые заказы, не прячет нарушение. Решение изменить срок, ресурс или приоритет остаётся за руководителем. Выдача невыполнимого графика без предупреждения приёмку не проходит.
Цена подписки равна цене всего модуля?+
Нет. 250 000 ₽ в месяц на тарифе «Один проект» оплачивают поток разработки. Общий объём зависит от качества данных, ограничений и интеграции. До оценки нужно согласовать первую итерацию и её приёмочные сценарии.
Источники
- Google OR-Tools, The Job Shop Problem · прочитано 08.10.2026 — официальная документация
- PyJobShop, Sequence-dependent setup times · прочитано 08.10.2026 — официальная документация
- Sterbrust, «Планирование загрузки оборудования: методы и оптимизация» · прочитано 08.10.2026 — материал поставщика
- Цех Успех, «Как посчитать загрузку оборудования и сотрудников» · прочитано 08.10.2026 — материал поставщика
- vibecoding.ru, карта машины и журнал разработки · срез 08.10.2026 — наша машина
- vibecoding.ru, программа курса, урок «Файл правил целиком» · срез 08.10.2026 — наша программа
- vibecoding.ru, тариф «Один проект» · срез 08.10.2026 — наша цена подписки
Запомнить
1. Задайте цель пересчёта: срок нужной операции, допустимые сдвиги и цену дополнительной переналадки.
2. Запишите переходы оснастки, общие ресурсы, календарь и уже начатые работы; неизвестные нормы пометьте отдельно.
3. Принимайте модуль на конфликтах и невыполнимых сроках, проверяйте последствия для всей затронутой очереди.
4. Начните рядом с действующим графиком; диспетчер утверждает вариант перед передачей в рабочую систему.
5. Возвращайте фактические задержки и ручные изменения в правила и проверки следующей версии.