SABSUS

Закупки · датированные партии

Многопериодная закупка: сравните оформление заказа и хранение

Если потребность по неделям различается, одинаковая повторяющаяся партия может создавать лишний запас. Но отдельная закупка к каждой неделе тоже стоит денег. Для ограниченного горизонта полезно сравнить конкретные даты и количества: какой будущий расход стоит заказать заранее, а какой оставить следующей поставке.

Редакция SABSUS · · Источники проверены 9 октября

Какое решение принимается

Здесь выбираются даты поступления и количество каждого поступления для одного SKU. Потребность уже подготовлена по периодам. Задача не оценивает будущий спрос и не определяет страховой запас: она сравнивает способы обеспечить данный ряд без дефицита.

Два крайних варианта понятны без формулы. Купить всё сразу означает одно оформление, но долгое хранение. Заказывать ровно к каждому периоду означает минимальное хранение, но много оформлений. Между ними находятся партии, покрывающие несколько соседних периодов.

MIT рассматривает такую постановку отдельно от постоянной EOQ и однопериодного решения. В материалах курса сопоставлены покупка всего объёма, lot-for-lot, эвристики и динамическое планирование. MIT: переменный спрос и конечный горизонт.

Сначала закрепите допущения

Для учебной базовой модели примем следующие условия:

  • один товар, известная потребность по четырём одинаковым периодам;
  • потребление происходит в начале периода, поступление доступно непосредственно перед ним;
  • начального запаса, открытых поставок и конечного остатка нет;
  • срок поставки нулевой, количество поступления не ограничено;
  • дефицит, потери, скидки и изменение закупочной цены отсутствуют;
  • каждое непустое поступление требует одного оформления с фиксированной стоимостью;
  • хранение начисляется на остаток после потребления за каждый полный переход к следующему периоду.

Это специально упрощённая модель. Поставщик в реальности может требовать MOQ, предварительный заказ, кратность или ограничивать количество. Такие условия должны попасть в постановку до принятия решения, а не после выбора красивого минимума.

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

Учебный пример: четыре периода

Все числа условные. Потребность составляет 20, 10, 40 и 10 штук. Всего нужно 80. Оформление одного поступления стоит 30 денежных единиц. Хранение одной штуки на протяжении одного периода стоит одну денежную единицу.

Цена самого товара одинакова для всех допустимых планов: каждый приобретает ровно 80 штук. Поэтому одинаковую закупочную сумму исключаем из сравнения. Если цена зависит от даты или количества, такое исключение уже требует отдельной проверки.

Для каждого периода восстановите баланс: конечный запас равен начальному запасу плюс поступление минус потребность. Отрицательный результат означает недопустимый план, даже если его общие затраты малы. Сравниваемая стоимость равна 30, умноженным на число непустых поступлений, плюс сумма конечных запасов.

Сравните все восемь базовых разбиений

Для базовой модели существует оптимальный план, в котором новая партия приходит после исчерпания предыдущей. Тогда каждая закупка покрывает подряд идущие периоды. Это свойство лежит в основе Wagner–Whitin; оно не распространяется автоматически на любое ограничение поставки. MIT: свойства базовой модели.

Между четырьмя периодами три возможные границы партии. Каждую либо сохраняем, либо объединяем, получая восемь вариантов. Ниже четыре числа обозначают поступления по периодам; ноль означает отсутствие поступления:

  • 80 / 0 / 0 / 0: оформление 30, хранение 120, вместе 150.
  • 70 / 0 / 0 / 10: оформление 60, хранение 90, вместе 150.
  • 30 / 0 / 50 / 0: оформление 60, хранение 20, вместе 80.
  • 30 / 0 / 40 / 10: оформление 90, хранение 10, вместе 100.
  • 20 / 60 / 0 / 0: оформление 60, хранение 60, вместе 120.
  • 20 / 50 / 0 / 10: оформление 90, хранение 40, вместе 130.
  • 20 / 10 / 50 / 0: оформление 90, хранение 10, вместе 100.
  • 20 / 10 / 40 / 10: оформление 120, хранение ноль, вместе 120.

Минимум равен 80 при поступлениях 30 в первом и 50 в третьем периоде. После расходов остаются соответственно 10, 0, 10 и 0 штук. Хранение: 10 + 0 + 10 + 0 = 20. Два оформления добавляют 60.

Покупка всех 80 сразу оставляет 60, 50, 10 и 0 штук, поэтому хранение стоит 120. Это объясняет, почему один документ не означает самый дешёвый план. При lot-for-lot остатка нет, но четыре оформления стоят 120.

Ограничение поставки меняет допустимые планы

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

Прежний минимум недопустим: в третьем периоде требовалось 50. План 30 / 0 / 40 / 10 укладывается в ограничение и стоит 100: три оформления по 30 и хранение десяти штук один период.

Но он не единственный оптимальный. План 40 / 0 / 40 / 0 также стоит 100: два оформления дают 60; конечные остатки 20, 10, 10 и 0 дают хранение 40. Перед третьим поступлением остаются десять штук. Следовательно, требование «заказывать только при нулевом остатке» уже исключило бы допустимый оптимальный вариант.

Для этой маленькой задачи минимум 100 дополнительно проверен динамическим перебором всех целых поступлений от нуля до 40 в каждом периоде с неотрицательным запасом и нулевым итогом. Состояние расчёта — период и входящий остаток; сравниваются текущие оформление/хранение и лучший оставшийся план. Это отдельная ограниченная модель, а не доказательство универсальности базового алгоритма.

Какие данные сохранять

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

Результат должен показывать выбранные поступления, покрываемые потребности, промежуточные остатки и обе составляющие затрат. Для уже размещённого заказа сохраните фактический статус: новый расчёт не даёт права автоматически отменить прежнее обязательство.

Ошибки и критерии приёмки

Частые ошибки — годовая ставка хранения в недельном расчёте, включение всего постоянного склада в дополнительные затраты, повторный учёт открытой поставки и бесплатный перенос товара за конец горизонта. Если после четвёртого периода есть реальный спрос, новый горизонт может изменить решение. Конечный ноль здесь является условием примера, а не общим правилом бизнеса.

Проверьте процесс на следующих случаях:

  • база даёт 80, а крайние политики — 150 и 120;
  • каждый промежуточный остаток воспроизводится из движений;
  • ограничение 40 исключает поступление 50 до выбора результата;
  • ограниченный расчёт сохраняет оба плана стоимостью 100;
  • изменение цены, срока или спроса выпускает новую версию расчёта;
  • отрицательный запас не маскируется положительным итогом;
  • открытые заказы не дублируются новыми предложениями.

Для закупок и склада SABSUS это сценарий приёмочной проверки. Наличие готового оптимизатора, его допущения и способ учёта действующих заказов подтвердите отдельно. Вычисленный минимум относится к указанным входам, а не гарантирует будущую экономию.

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

Можно подставить средний спрос в EOQ?

Это другая модель. Среднее скрывает сроки пиков, которые здесь непосредственно определяют допустимые партии.

Самый дешёвый план обязательно единственный?

Нет. При ограничении 40 два разных плана дают одинаковые затраты 100.

Нужно ли выполнять весь расчётный план сразу?

Нет. Определите, какие поступления уже утверждаются, а какие остаются предложением для следующего пересмотра.

Источники

Проверено 9 октября 2026 года. Пример и независимый ограниченный перебор подготовлены для статьи.