Обещанное про ИИ. То, ради чего я городил прошлый пост.

Итак, у нас была проблема сроков.

Производство позаказное, продукт индивидуальный, нормативы фиксировать смысла нет — продукт больше не повторится. Загрузку производства и КБ оценивали или из выручки, или из ощущений. Сроки ставили так же. А ощущения, сука, вещь не очень правдивая.

Мы добросовестно пробовали оценивать трудозатраты и собирать план. Но тут появлялись старые добрые «дикие» заказы:

«Клиент очень важный — (мэрия, правительство, Газпром, Сбер — нужное подчеркнуть)», «Дадим такой срок — он уйдёт», «Мы сейчас быстренько сделаем, а он потом у нас сто-о-олько (жест рыбака с показом размера рыбы) закажет».

И вот быстро прикинуть, как этот дикий заказ встанет в план, кого подвинет и как от этого поплывёт вся цепочка, было практически нереально. Пересобирать план руками после каждого нового заказа — и сложно, и бесполезно, потому что через два часа прилетала следующая сделка и всё нужно было пересобирать заново.

Поэтому заказ всё равно брали. Часто зажмурившись. Сроки срывались, производство и конструктора погружались в хаос, вечные прыжки с заказа на заказ становились нормой. А оттуда тянулись потери в эффективности, падение объёмов и, следом, доходности (см. предыдущий пост).

Тот пост я и закончил простой мыслью: не стоит расписывать поминутно все операции, потому что этот график вариабельность рвёт, как Тузик грелку, минут через двадцать после того, как ты его собрал. На заводе всегда есть место, которое задаёт темп всему остальному, и вот его-то и нужно знать, держать перед ним буфер и называть срок с уже заложенной вариабельностью.

Вот файл, который ровно это и пытается делать.

У нас на том производстве ограничение сидело на сварочно-сборочном участке (что логично) и в КБ (а вот это уже совсем нехорошо). Сроки называли по прикидке загрузки производства, а загрузку КБ вообще не учитывали. Наша с ИИ задача была завести в расчёт оба этих места, а заодно проверять, реально ли выполнить сроки, которые наобещали продавцы, и считать срок самим, если его ещё нет.

Вот что вышло.

Заказ ты заводишь всего один раз и в одном месте: номер, срок, часы КБ, часы сборки, класс — и на этом твоё участие заканчивается. Часы отделы прикидывают экспертно, большой точности не надо. Класс — это сложность подготовки производства, для простоты взяли три уровня: заготовка после выдачи КД готова за один, три или шесть дней.

Дальше файл сам считает, когда выйдет чертёж, когда изделие будет готово и влезает ли оно вообще в горизонт. Из вкладки ввода заказ переезжает в КБ и Сборку автоматом, копировать ничего не нужно.

Очередь при этом выстраивается по сроку клиента и сразу в обоих барабанах. Стоит поставить срочный заказ с ранним сроком, как он встаёт вперёд и в КБ, и на сварке одновременно, и тот вечный вопрос — впихнём срочный, не сорвав остальные, или нет — файл решает за секунду, сразу подсвечивая статус красным, жёлтым или зелёным.

Важно, что это не про поминутное планирование. Файл грузит ограничение по дням и показывает, что из этого выходит: барабан набивается заказами по ёмкости, дальше переходит на следующий день, а между КБ и сваркой закладывается лаг передела по классу. На выходе — реальная дата готовности, а не та, что хотелось бы.

Отдельно отмечу то, что мне кажется самым ценным: режим «предложить срок».👇