Из чего состоит страховой запас? Моделируем в SG Simple на Optimacros

Подвернулась мне на днях задачка про страховые запасы. Решил проверить её через моделирование – благо накопилось достаточно моделей как в Excel, так и на платформе Optimacros.
Но начнем мы с разбора результатов опроса, который я недавно публиковал у себя в Telegram канале.
Это был незамысловатый тест про влияние разных волатильностей на величину средних запасов. Говоря про средний запас мы прекрасно понимаем, что состоит он из страхового и рабочего запаса.
Опрос был таким:
Дано:
-
средний спрос в день – 1000 шт.
-
отклонение среднедневного спроса – 30%
-
периодичность размещения заказа – 2 раза в месяц
-
срок поставки – 70 дней
-
отклонение срока поставки – 0.5%
Вопрос:
Что больше повлияет на средний уровень запаса для достижения заданного уровня сервиса второго рода (SL2=99%) — более волатильный спрос (60% вместо 30%) или же более волатильный срок поставки (5% вместо 0,5%)?
Варианты ответов:
-
Волатильность спроса сильнее повлияет на уровень запасов
-
Волатильность срока поставки сильнее повлияет на уровень запасов
-
Варианты окажут почти одинаковое влияние на величину средних запасов
-
Не знаю ответ, хочу посмотреть варианты
Большинство высказалась, что в данном конкретном кейсе, отклонение спроса влияет больше на средний запас, чем отклонение срока поставки. Выбрали вариант 1.
На самом деле, это не так. Почему – подробно опишу в этой статье.
Моделировать я буду с помощью SG Simple — это сильно упрощенная версия Supply Game | ПРО ЗАКУПКИ, которая превратилась в калькулятор закупщика. Разработано все, естественно, на платформе Optimacros. Ссылочку на видео с описанием данной разработки прилагаю:
Решаем задачу с помощью симулятора
Шаг 1.
Заносим наши параметры в симулятор:
-
вариативность спроса и срока поставки
-
модель закупок с регулярной периодичностью закупа
-
уровень сервиса первого рода

Запускаем симуляцию и анализируем результаты. Нас интересуют параметры, которые я выделил в красные прямоугольники:
1. Вариативность спроса и срока поставки соответствует заданным условиям, хотя допустимы небольшие отклонения.
2. Средний запас при заданному уровне сервиса второго рода (SL2 составил 99,2%) равен 6 025 495 рублей.

Запомнили эти данные, едем дальше.
Шаг 2
Следующим шагом — меняем волатильность спроса с 30% на 60%. Все остальное оставляем без изменений.

Наблюдаем следующие результаты:

1. Вариативность спроса чуть ниже получилась, а вариативность срока поставки — чуть выше. Как и говорил — небольшие отклонения при моделировании допустимы.
2. Средний запас при заданному уровне сервиса второго рода (SL2 составил 98,8%) равен 8 147 289 рублей.
Как видим — запас значительно вырос (с 6 до 8 млн рублей). В относительном выражении на более чем 30%.
Запомнили эти данные, едем дальше.
Шаг 3
Следующим шагом — возвращаем волатильность спроса на 30%, но меняем волатильность срока поставки с 0,5% на 5%. Все остальное оставляем без изменений.

Запускаем симуляцию и анализируем результаты.

И что же мы видим? Уровень сервиса при заданных параметрах у нас составил всего 88,7%, что никак не коррелируется с условиями задачи.
Сравнивать средний запас для разных уровней сервиса в текущей задаче некорректно.
Для получения релевантных данных — увеличиваем страховой запас путем увеличения коэффициента запаса под уровень сервиса первого рода SL1 = 92%:

Тут, наверное, стоит сделать отступление: SL1=92% это коэффициент запаса k=1,4, т.е. в страховой запас мы возьмем 1.4 сигмы, то бишь среднеквадратичных отклонения. А в базовом варианте SL1=50%, т.е. мы вообще не берем ничего в запас, коэффициент k=0.
На моих тренингах по управлению запасами мы проходим формулу определения количества сигм для обеспечения того или иного уровня сервиса первого рода (в данном случае используем формулу для 92%): = НОРМСТОБР(0,92).
Кто-то должен возгласить — Стоп! Мы же приводили все к сервису 99%! А тут — 92%.
Все верно. Мы достигаем уровня сервиса второго рода SL2=99% с помощью k=1.4, что эквивалентно уровню сервиса первого рода SL1=92% для данного конкретного случая.
Вообще, тему разных уровней сервиса я поднимал уже неоднократно. Настоятельно рекомендую проштудировать материал ниже — подавляющее большинство моих “студентов” не знают о разнице в уровнях сервиса, а это очень важно в торговле!
Т.е. для достижения требуемого уровня сервиса второго рода SL2 (тот сервис, который мы обычно используем в торговле, уровень удовлетворения спроса в денежном выражении), мы регулируем наш страховой запас с помощью коэффициента запаса k, который, в свою очередь, является характеристикой уровня сервиса первого рода SL1.
Наверное запутал всех, но материал ниже поможет разобраться. Или же жду к себе на тренинги.
Что такое уровень сервиса и с чем его едят?
Как найти баланс между уровнем сервиса и затратами
Математическая модель управления запасами в закупках SL3_v02-4snt
Возвращаемся к моделированию:

1. Вариативность спроса получалась нормативной, а вариативность срока поставки — чуть ниже заданной. Но это допустимо.
2. Средний запас при заданному уровне сервиса второго рода (SL2 составил 99,3%) равен 9 378 025 рублей.
Получив все результаты моделирования мы можем сделать вывод:
вариативность срока поставки в нашей задаче гораздо больше влияет на средние запасы для обеспечения заданного уровня сервиса, нежели чем вариативность спроса.
Средние запасы более чем на 10% будут выше.
Однако опытные менеджеры по управлению запасами знали это еще в самом начале.
Нужно просто любить математику и понять, что сравнивали мы два разных измерения: увеличение вариативности спроса на 30% и всего-лишь 4.5% увеличение вариативности срока поставки.
Только вариативность спроса 60% не такая уж большая величина.
Ведь нам нужна вариативность спроса на сроке реакции (срок поставки + интервал между заказами). Т.е. на 84 днях! А не дневная, которая дана в условиях задачи.
Ведь спрос сегодня у нас +30% от среднего, завтра -30% от среднего, послезавтра +20% и т.д. Т.е. дневная вариативность спроса внутри срока реакции будет уравновешивать друг друга в той или иной степени.
В целом, вариативность спроса на 84 днях будет никак не 60% по итогу.
Ниже два слайда из моего тренинга, объясняющие всю суть происходящего:


Т. е. сигма спроса на сроке 84 дня у нас составит:
Среднеквадратичное отклонение = 600 (60% от средних продаж в 1000 штук) х КОРЕНЬ(84) = 5 500 штук.
Средние продажи (за 84 дня) = 1 000 * 84 = 84 000 шт.
Несложно заметить, что в базовом варианте у нас средние продажи 1 000, сигма 600, а в приведенным к сроку реакции 84 000 и 5 500 соответственно.
Совершенно другая пропорция!
Переведя сигму в относительное выражение (5 500 / 84 000) — получаем всего 6,5%!
Только представьте — отклонение спроса на 84 дневном интервале у нас будет +/- 6,5% в соответствии с законами нормального распределения (при ежедневной сигме продаж 60%).
Несложно посчитать и отклонение спроса на 84 дневном интервале при ежедневной сигме спроса в 30% (первоначальный вариант). Но оставлю это вам в качестве домашнего задания.
А вот увеличение отклонения срока поставки сразу на 4,5% вынуждает нас класть в страховой запас немного больше, нежели чем для страховки от вариативности спроса.
О подобных вещах я подробно рассказываю в своих видео:
Нормирование запасов. Часть 3. Нормальное распределение.
Так же даю ссылку на раздел с материалами по математике закупок:
Математика закупок | Александр Васильев | Управление цепями поставок | Supply Game | Дзен
Не могу не поделиться одним из отзывов о моем тренинге по математике закупок:
Отзывы о бизнес-игре Supply Game Math
Статьи об управлении закупками и поставщиками, оптимизации запасов:
👉 https://alex-vasilev.ru/articles/
Надеюсь было интересно и не слишком сложно!
Рекомендую всем, кто участвует в расчете нормативов запасов: фокусируйте внимание на том, что можете изменить (в данном случае — сохранении стабильности срока поставки), потому что вы почти никак не можете повлиять на вариативность спроса (за исключением маркетинга, но мы это в своем канале стараемся не рассматривать).
В модели ниже я как раз и подчеркиваю важность управления сроками поставки для оптимизации размера страхового запаса:
Все, пора заканчивать, статья выдалась объемной.
До новых встреч!
Свежие статьи на сайте:
- Как я пробежал 10 км, хотя ненавижу бег: история одного челленджа
- «ИИчница»: как мы скрестили «ПРО Закупки | Supply Game» и AI Avatar.
- Семинар в РАНХиГС «Магия математики закупок»: как заинтересовать студентов погружаться в дебри?
- Из чего состоит страховой запас? Моделируем в SG Simple на Optimacros










