Создадим модель для определения оптимального размера партии товара, при котором общие переменные затраты минимальны. Затраты связаны с процедурой заказа и хранением партии на складе, и зависят от размера партии. Также учтем ограничение, связанное с размером склада. Расчет будем проводить с помощью надстройки Поиск решения. Для простейшего случая задачи приведем аналитическое решение.
Задача основана на EOQ-модели (Economic Order Quantity, Экономичный размер заказа). Сначала рассмотрим классическую EOQ-модель, затем добавим ограничение, связанное с размером склада и найдем решение с помощью
Поиска решения
. (пример с сайта
www.solver.com
)
EOQ-модель
Изделия на склад поступают регулярно одинаковыми партиями размера Q (в каждой партии Q изделий), а со склада выходят по одному изделию (продаются или запускаются в производство). Предполагается, что количество изделий на складе уменьшается равномерно от Q до 0, а затем, происходит мгновенное пополнение склада новой партией (на величину Q) и так несколько раз в течение года, где D – это величина годового спроса на изделия. Соответственно, пополнение происходит D/Q раз в год. В этой модели 2 источника затрат:
- затраты, связанные с процедурой закупки партии товара;
- затраты на хранение изделий на складе.
Стоимость процедуры закупки одной партии фиксирована и равна K, она включает затраты на погрузку, разгрузку, доставку и пр. Суммарная стоимость закупки всех партий в течение года =K*D/Q. Годовая стоимость хранения одного изделия =h (включает содержание склада, охлаждение, страховку и пр.). Среднее количество изделий, хранящееся на складе =Q/2 (т.к. количество равномерно убывает от Q до 0), годовая стоимость хранения изделий =h*Q/2. Обратим внимание, что чем больше размер партии Q, тем выше расходы на хранение (=h*Q/2), но меньше стоимость закупки (=K*D/Q). Для определения оптимального размера партии (Q*) существует аналитическое решение. Общие затраты на хранение и закупку (TC): TC=K*D/Q+h*Q/2
После дифференцирования по Q определим Q* — размер партии, при которой TC минимальны.
Q*=SQRT(2*D*K/h) — формула Уилсона. На рисунке ниже приведены графики стоимости закупки, стоимости хранения и суммарные затраты (см.
файл примера
).
К сожалению, рассмотренная модель зачастую не отражает более сложную окружающую нас действительность: спрос подвержен изменениям, время исполнения закупочной процедуры не постоянно, на складе оставляют некий переменный запас изделий и др. В следующей модели мы учтем ограниченность размера склада. Для определения оптимального размера партии в данном случае нельзя будет применить Формулу Уилсона, но задачу можно решить с помощью
Поиска решения
. Покажем, как это сделать.
EOQ-модель с ограничением по объему склада
Усложним предыдущую задачу, добавив ограничение на объем склада, и рассмотрим поставку и хранение сразу 4-х разных изделий. У каждого изделия своя стоимость хранения и стоимость закупочной процедуры.
На рисунке ниже приведена модель, созданная для решения этой задачи (см.
файл примера, лист EOQ (ограничен объем)
).
Переменные (выделено зеленым)
. В качестве переменных модели следует взять количество изделий в партии (4 переменных для каждого изделия).
Ограничения (выделено синим)
. Объем склада не должен быть меньше, чем общий объем партий.
Примечание
. Т.к. партии разных изделий приходят независимо друг от друга и количество изделий равномерно убывает от Q до 0, то в среднем количество изделий, находящихся на складе, будет равно половине партии (это допущение необходимо для сравнения с EOQ моделью).
Целевая функция (выделено красным)
.
Общая стоимость закупки и хранения, д.б. минимальна.
Примечание
: для удобства настройки
Поиска решения
используются
именованные диапазоны
.
Обратите внимание, что модель не линейная: Целевая функция (TC) зависит от переменных (Q) по нелинейному закону: TC=K*D/Q+h*Q/2 Поэтому в окне
Поиска решения
выберите метод для решения нелинейных задач. Формулы модели не должны содержать ошибок, поэтому не оставляйте ячейки переменных пустыми: в качестве начальных условий будут взяты 0 значения, что вызовет ошибку #ДЕЛ/0! Если ослабить ограничение (взять большой объем склада, скажем 500 000), то найденное решение будет близко или даже совпадать с расчетами, выполненными по Формуле Уилсона.
EOQ-модель с ограничением по объему склада и закупочной цене
Усложним предыдущую задачу, добавив ограничение на стоимость закупки изделий. Также потребуем, чтобы количество изделий в партиях было четным числом (см.
файл примера, лист EOQ (ограничен объем и цена)
).
В параметрах
Поиска решения
можно установить Целочисленную оптимальность =0. При Целочисленной оптимальности =5% решение начинает сильно зависеть от начальных условий (установите сначала переменные равным 1, затем =26). В первом случае будет найдено решение 23, 30, 30, 20, а во втором 24, 31, 30, 19. Дело в том, что целевая функция в обоих случаях будет отличаться совсем незначительно (гораздо менее 5%).
Вводная статья про
Поиск решения
в MS EXCEL 2010
находится здесь
.
Расчет точки заказа товара на основании:
- статистики продаж
- периодичности заказов
- сроков поставки
Персентиль VS формула Вильсона
Для расчета оптимальной партии заказа, оптимальной точки заказа, оптимального времени заказа в классической логистике используется формула Вильсона (Уильсона). Однако, формула Вильсона была разработана для крупных промышленных предприятий и подходит для условий, когда расход продукции постоянен, продукция однородна. В реальности продажи бывают разными:
То есть, для современной торговой компании формула Вильсона не подходит. Также не подходит формирование страхового запаса на базе расчета средней арифметической, т.к. такой уровень запаса не обеспечивает всплески продаж. В то же время держать на складе избыточный запас в расчете на всплески продаж, которых может и не быть — неэффективное замораживание оборотных средств.
При расчетах страховых запасов более 10.000 наименований (SKU) с неравномерными продажами оправдана другая методика расчета точки заказа — с помощью функции MS Excel -ПЕРСЕНТИЛЬ (скачать файл). Персентиль позволяет установить процент продаж, обеспеченных страховым запасом. В рассматриваемом примере берется 0.8 Персентиль, т.е. товарными запасами будут обеспечены 80% продаж:
Если Вам нужно обеспечить запасами большее или меньшее количество возможных продаж, просто поменяйте процент продаж обеспеченности продаж в строке 1 (это второй аргумент в функции Персентиль). Например, аргумент, равный «0,95» обеспечит 95% возможных продаж, рассчитанных на основании статистики. Значение аргумента может быть задано в диапазоне от 0% до 100% продаж.
Формула для заказа товара |
||||||||
Ответить |
||||||||
Ответить |
||||||||
Ответить |
||||||||
Ответить |
||||||||
Ответить |
||||||||
Ответить |
||||||||
Ответить |
||||||||
Ответить |
||||||||
Ответить |
||||||||
Ответить |
Коэффициент оборачиваемости = Расход/Средний запас за период
Средний запас за период = (остаток на начало + остаток на конец) /2
для вашего примера первая формула
Показывает, за сколько раз обернулся средний товарный запас за период. Чем ниже КО, тем хуже.
Если периодов больше 1, то неплохо брать средний запас за период более детально, так точнее видна фактическая оборачиваемость (если приход в конце периода, а в 90% дней был 0, то средний запас может быть слишком большим, а расход просто не успеть раскрутиться)
Но коэффициент оборачиваемости не поможет вам спланировать минимальный запас, если по Коэффициенту оборачиваемости не установлен критерий. Наример, он должен быть не ниже 1. Или не ниже 0,5 — зависит от отрасли и кучи других вещей, в том числе аппетитов начальства.
Общий подход, который можно в экселе спланировать:
Тов.Запас на начало периода д.б. равен запасу на период поставки + страховой запас.
То есть вам нужно знать как минимум:
1. Срок поставки (от размещения заказа до прихода на склад)
2. План продаж на этот период
3. Возможное отклонение плана продаж и срока поставки
Тогда общая формула будет примерно такая:
Мин. ТЗ на нач.мес. = (Среднедневной план продаж)*(срок поставки в днях)+Страховой_запас
Страховой_запас = Возможное отклонение плана продаж за период + запас на возможное отклонение срока поставки
Запас на возможное отклонение срока поставки = (Возможное количество дней задержки поставки)*(Среднедневной план продаж)
Запас на возможное отклонение плана продаж = (Возможное отклонение плана продаж в %)*(Вероятность этого отклонения)*(Среднедневной план продаж)*(срок поставки в днях)
Последнее встречается в + редко, так что можно проигнорировать. Обычно идет недовыполнение плана, поэтому образуются излишки сами по себе.
Но страховой запас может быть установлен и директивно — должно быть в запасе 20% от плана, и хоть тресни.
Ну и этот Мин.ТЗ может быть округлен вверх до некоего минимального нормативного запаса — кратно какой-то упаковке, партии, или просто «должно быть всегда не меньше Х, иначе никто не придет покупать»
- /
Алгоритм и формулы расчёта заказа поставщику в опте и рознице
Для того, чтобы создать заказ поставщику, нужно рассчитать, как минимум два параметра: точку заказа (МИН) и объём товара к заказу.
Как рассчитывается точка заказа (МИН)?
Синонимы: Мин, точка заказа, re-order point, ROP.
Задача закупщика — заказывать товар так, чтобы максимизировать количество дней, когда товар есть на полке и при этом минимизировать количество вложенных в товар средств.
Точка заказа или МИН позволяет отследить тот момент, когда остатки товара снизились настолько, что пора сделать заказ поставщику.
Этот момент наступает, когда при очередной проверке мы видим, что текущих остатков не хватит до следующего поступления и поэтому включаем их в текущий заказ.
Логику хорошо видно на примере:
- Каждый понедельник я делаю заказ (интервал проверки 7 дней)
- Товар поступает ко мне через 5 дней (срок поставки 5 дней)
- Если я сделаю заказ сегодня (в этот понедельник), то товар поступит в эту пятницу. Следующий заказ я буду делать в следующий понедельник, через 7 дней и заказанный мной товар (следующее поступление) поступит только в следующую пятницу, через 12 дней.
- Согласно определению, я должен включить товар в текущий заказ, когда его остатков не хватит до следующего поступления. В данном случае когда их станет меньше чем на 12 дней.
- Если же у меня остаётся остатков на 10 дней и я не включу этот товар в текущий заказ, то он закончится в следующую среду и 2 дня я буду сидеть с пустыми полками.
- Если у меня остатков на 15 дней, то я легко могу пропустить этот заказ (не делать его в этот понедельник). Тогда к следующему понедельнику у меня будет на остатков на 8 дней, я сделаю заказ и получу пополнение через 5 дней в пятницу.
- В итоге товар нужно заказывать, когда в очередной понедельник мы видим, что его на 12 дней или меньше.
Теперь тоже самое в виде таблицы для наглядности
Ниже отображены варианты развития событий в ближайшие 2 недели.
Во всех ячейках, кроме первой выводятся остатки на конец дня. Каждый день продаётся ровно по 1 штуке, поэтому остатки снижаются.
В первой колонке — стартовый остаток на утро понедельника. В каждой строке стартовый остаток разный. Таким образом мы рассмотрим несколько вариантов того, как поведут себя остатки на складе в зависимости от текущего остатка на момент заказа товара.
Оранжевым цветом выделены ячейки, когда мы делаем проверку остатков и решаем, включить этот товар в текущую заявку поставщику или нет.
Красным отмечены дни с нулевыми остатками на полках. Это та ситуация, которой мы допустить не должны.
Синим — дни, в который пришло поступление от поставщиков. Для простоты от поставщика всегда поступает 10 штук. Ведь сейчас мы изучаем формулу точки заказа, а не объема.
Таблица №1.
Здесь мы решили не делать заказ в первый понедельник. И сейчас увидим, к чему нас это приведёт при разных текущих остатках.
В первой строке мы не сделали заказ, когда на остатках на утро понедельника у нас было 9 штук. Поэтому в следующий понедельник на полке осталась только 1 штука. Здесь мы осознаём, что нужно срочно сделать заказ, но срок поставки 5 дней, и прибыть товар раньше пятницы не сможет. В итоге 3 дня (Вт, Ср, Чт в первой строке выделены красным) товар отсутствует на полке.
Очевидно, что решение не сделать заказ, когда на остатках оставалось 9 штук было ошибочным.
Многие люди считают, что заказ поставщику нужно делать, когда товара на полке остаётся на срок поставки. В этом примере хорошо видно, что это не так. Срок поставки 5 дней, а товара оставалось ещё на 9 дней. Мы не сделали заказ и в результате три дня сидим без остатков.
Анализируя следующие строки мы видим повторение ситуации вплоть до 12 штук: если мы не делаем заказ, то сталкиваемся с дефицитом товаров на следующей неделе.
Таблица №1.
Здесь мы всё сделали правильно: заказали 10 штук в понедельник, которые поступили в пятницу (день с поступлением выделен синим). Никакого дефицита теперь не наблюдается.
Это принцип расчёта точки заказа работает в любой ситуации: как для товаров, продающихся каждый день (типа молочки), так и для товаров с длинным сроком поставки (который возят из Китая контейнерами).
Формула точки заказа (МИН)
Количество дней, за которое нужно заказывать товар вычисляется по формуле:
Точка заказа в днях = СрокПоставки + ИнтервалПроверки
При переходе от точки заказа в днях к точке заказа в штуках, формула принимает следующий вид:
Точка заказа в штуках = Ожидаемый расход за (СрокПоставки + ИнтервалПроверки) + НеснижаемыйОстаток
В классическом формуле показателя НеснижаемыйОстаток нет, но иногда он нужен, чтобы поддерживать наполненность витрины независимо от объёма продаж.
Как рассчитывается ожидаемый расход
(он же прогноз продаж)?
Если товар продаётся часто и по нему собралось достаточно статистических данных, то прогноз делается по классической формуле. Если же товар продаётся редко (например 2-3 штуки в за анализируемый период продаж), используются другие расчеты, о них в другой раз.
Классическая формула ниже рассматривается в упрощённом виде. В реальности она дополнительно включает такие параметры как: СреднийЧек, СезонныйКоэффициент, ПриростПродаж.
Для расчёта прогноза используется средняя продажа за выбранный период и страховой запас.
Прогноз = КоличествоДней * СредняяПродажа + СтраховойЗапас
Страховой запас зависит от равномерности продаж товара.Если в среднем в месяц продаётся 10 штук, то в следующей месяц может быть продано как 15 штук, так и 5. Соответственно, если мы будем для прогноза использовать среднюю продажу, то в половине случаев этих остатков нам не хватит.
Страховой запас — это уровень запаса, который снижает дефицит товаров из-за непредвиденных событий (когда прогнозы не соответствуют спросу, время поставки превышает ожидания). Основная и новая формулы. Какую выбрать, разбираем на примерах.
подробнее >
В самом простом варианте, в качестве страхового запаса можно взять половину от средней продажи.
Если рассчитывать по серъёзному, то он вычисляется в зависимости от неравномерности продаж (стандартного отклонения или сигма) и ABC-класса товара. Об этом тоже в следующий раз.
Как рассчитывается объем заказа?
Важный момент: объем заказа рассчитывается по-разному при длинных и коротких сроках поставки.
Когда мы говорим «короткий» или «длинный» срок поставки, то это не абсолютная длина срока в днях, а отношение срока поставки к интервалу проверки.
Примеры длинных поставок:
- Если срок поставки 6 месяцев, а заказ мы делаем раз в месяц.
- Если срок поставки 1 месяц, а заказ мы делаем раз в неделю.
- Все случаи, где СрокПоставки / ИнтервалПроверки больше 3х. Т.е. в то время, когда мы делаем очередной заказ, в пути у нас может находится 2 и более заказов поставщику
Короткие поставки:
- Срок поставки 1-2 недели, интервал проверки 1 неделя.
- Срок поставки 1 месяц, интервал заказа 1 месяц.
- Все случаи, где СрокПоставки / ИнтервалПроверки меньше 3х. Нескольких заказов в пути у нас не бывает.
Основная особенность методов — использование понятия МАКС. При заказе у поставщика при длинных поставках это понятие не используется. При коротких же сроках поставок гораздо удобней и наглядней оперировать МИН и МАКС.
Расчёт товара к заказу при длинных сроках поставки
При длинных сроках поставки понятие «МАКС» избыточно и не используется.
Лучше всего объяснить принцип заказа на примере. Предположим, срок поставки у нас 90 дней, а интервал проверки 30 дней. Т.е. мы делаем заказы поставщику каждый месяц, но к нам они идут в течение 3х месяцев. В день для простоты будет продаваться ровно 1 штука.
Если товара на складе станет меньше 120 (это МИН, рассчитанный по формуле выше), то нужно сделать заказ. Следующая возможность сделать заказ появится через месяц. Соответственно поступления от поставщика придут тоже с интервалом в месяц: первое поступление придёт через 3 месяца, второе — через 4.
Соответственно, заказ нужно сделать в таком объёме, который будет продан за срок между этой и следующей поставкой. Т.е. 30 штук, который поступят через 90 дней. При этом второй заказ мы сделаем через 30 дней, и он поступит через 120 дней. Таким образом, каждый месяц мы будем заказывать по 30 штук. Также как и при расчёте минимума, при расчёте ожидаемого расхода за срок между поставками (он будет равен интервалу проверки) учитывается страховой запас, закладываемый на колебания спроса.
Диаграмма: сделали заказ, когда на складе было 119 штук и продолжаем делать заказ по 30 штук каждый месяц. Жёлтый график — остатки на складе плюс остатки в пути. Красный — остатки на складе на каждый день. Видно, что остатки не опускаются ниже 30 штук. Но это только потому, что в формуле не учитывается «Остаток на момент поступления», о котором ниже.
Делать заказ одного и того же товара каждый месяц может быть накладно из-за расходов на перевозку, складских операции, хранения и т.п. И поставщик нам спасибо не скажет, если мы будем заказывать помалу, но часто. При этом теория закупок гласит, что мы должны выбрать оптимальный интервал заказа, который вычисляется как раз на основании стоимости логистики и скидок за объём. Если логистика ничего не стоит и скидок нет, то конечно, лучше заказывать часто и помалу. В иных ситуациях приходится лавировать.
Если мы решили, что заказ одного и того же товара будем делать не каждый месяц, а раз в три месяца, то мы заказываем соответственно не на 30 дней вперёд, а на 90. В формулу заказа в этом случае вводится понятие «Дополнительный запас», который составит 60 дней. В итоге, «Дополнительный запас» позволяет нам уменьшить частоту заказов, делая заказы реже.
Тогда на срок между поставками нам понадобится товар в объеме по формуле:
ОбъемЗаказа = РасходЗаИнтервалМеждуПоступлениями + ДополнительныйЗапас + НеснижаемыйОстаток
По этой формуле объем заказа для нашего примера составит 30 штук.
Но не всегда имеет смысл заказывать такое количество. Если в нашем примере выше, текущий остаток составит 115 штук, то при продаже 1 штуки в день к моменту поступления на складе останется 115-90 = 25 штук. Следующее поступления прибудет через 30 дней и чтобы продержаться до него, нам нужно 30 штук. Но если мы закажем поставщику 30 штук, то на момент поступления на складе окажется 25 + 30 = 55 штук.
Многовато. Это количество можно уменьшить, если заказать у поставщика не 30, а только 5 штук. Тогда через 90 дней, в момент поступления на складе окажется 25 + 5 = 30 штук, которых хватит ровно до момента следующего поступления. Чтобы учесть этот момент, в формулу вводится понятие «Остаток к моменту поступления», который рассчитывается по формуле:
ОстатокКМоментуПоступления =
Макс(0, ОстатокНаСкладеСвободный + ЗаказаноПоставщикам – ОжидаемыйРасходЗаСрокПоставки)
Т.е. зная максимальный объём, который нам нужно заказать и учитываем те остатки, которые держим сейчас на руках.
В итоге формула очередного заказа у поставщика принимает вид:
ЗаказатьУПоставщика =
ОбъемЗаказа – ОстатокКМоментуПоступления
Словами формулу можно объяснить так:
Заказ делается на срок между текущей и следующей поставкой (который совпадает с интервалом проверки), плюс дополнительный запас и неснижаемый остаток, минус остаток к моменту поступления.
Расчёт заказа при коротких сроках поставки используя МАКС
Когда сроки поставки небольшие и заказов в пути немного, становится удобнее оперировать понятиями МИН и МАКС, не акцентируясь на объём заказа.
По классическому книжному определению МАКС – это максимальное количество товара на руках и в заказах. В случае небольших сроков поставки МИН и МАКС имеют ясное физическое значение — это максимальный и минимальный запас на полках. Если же сроки поставки удлиняются, то делать заказ, опираясь на МАКС становится сложнее, а когда объем товаров в пути многократно превышает средний остаток на складе, то и вовсе невозможно.
Когда остатки снижаются до МИН или ниже, заказ делается в объёме
ЗаказатьУПоставщика = МАКС – ОстатокКМоментуПоступления
Если мы используем ручные МИН и МАКС, то не строим прогноз продаж и не рассчитываем «Остаток к моменту поступления», и можно использовать формулу попроще:
ЗаказатьУПоставщика = МАКС – ТекущийОстаток
Как рассчитать МАКС?
МАКС рассчитывается по формуле:
где объём заказа рассчитывается по той же формуле, что и при длинных поставках:
ОбъемЗаказа = РасходЗаИнтервалМеждуПоступлениями + ДополнительныйЗапас + НеснижаемыйОстаток
А что, если не учитывать расход до момента поступления?
Попробуем понять, что мы потеряем, если будем пренебрегать расходом до момента поступления и вместо ОстатокКМоментуПоступления использовать ТекущийОстаток.
Т.е. вместо формулы:
ЗаказатьУПоставщика = МАКС – ОстатокКМоментуПоступления
Использовать её упрощённый вид:
ЗаказатьУПоставщика = МАКС – ТекущийОстаток
Для начала, давайте посмотрим, когда эти формулы дают одинаковый результат.
Например, это происходит во всех вариантах ниже. Здесь СрокПоставки = 5, ИнтервалПроверки = 7, СредняяПродажа = 1, МИН = 12
Формулы дают одинаковый результат, если текущий остаток не успевает распродаться к моменту поступления.
Когда же текущий остаток слишком мал и к моменту поступления ничего не остаётся, формулы дают различный результат, правильным из которых является первый. А вторая формула даёт завышенный заказ.
Первая формула предлагает: купи 7 штук, их тебе как раз хватит до следующей пятницы. Всё-равно в ближайший понедельник закупишь ещё.
Вторая формула просто пополняет до максимума.
Эту разницу стоит учитывать только при длинных поставках, которые обычно бывают в оптовой торговле. В условиях обычной розницы, ей можно пренебречь ради простоты процесса.
Автоматический заказ поставщику
Система управления запасами min-max.pro автоматически, основываясь на перечисленные формулы рассчитывает потребность и предлагает сделать заказ у поставщика. Расчеты производятся с учетом сезонности, истории продаж, АВС и XYZ классов, сроков поставки, резервов, текущих остатков и товаров в пути, аналогов, исключая крупные оптовые и тендерные продажи.
Протестировать систему можно бесплатно 30 дней. Поможем установить и проконсультируем по всем вопросам.
В предыдущей статье мы выяснили, что рекомендация к заказу определенной товарной позиции возникает в тот момент, когда расчётный остаток на момент прихода падает меньше оптимального уровня запаса. Также в предыдущей статье мы дали определение и пример расчёта оптимального уровня запасов.
В этой статье нам остаётся описать принципы расчёта планового остатка и непосредственно рекомендуемого заказа.
Итак, как понять, сколько товара останется на остатке на момент прихода расчётной текущей поставки?
Что мы имеем на каждый определенный момент времени, когда садимся делать заказ? У нас имеется такая статистика:
— остаток на складе
— остаток товара, который находится в пути
— статистика продаж за прошлые периоды
Наша задача – максимально точно спрогнозировать остаток товара на складе на момент поступления новой партии товара, анализируемой для размещения в текущем заказе.
Возьмём для примера ту статистику продаж и остатков, которую мы представили на рисунке 1 в предыдущей статье
Как мы можем видеть, на дату анализа у нас имеется 5 штук анализируемого товара, в пути на наш склад едет ещё 8 штук товара.
Чтоб рассчитать планируемый остаток на момент прихода текущего заказа, мы должны к текущему остатку товара на складе компании прибавить товар, который в скором будущем поступит на наш склад, и отнять планируемый уровень продаж, который возможен в течении времени, пока новая партия товара будет доставлена на склад компании.
Основная проблема в данной ситуации – прогнозирование продаж. Мы уже говорили, что может быть множество методик прогнозирования продаж, которые имеют свои подводные камни в случае их применения. Но в данной статье давайте используем элементарную методику прогнозирования продаж, основанную на средненедельных продажах.
Итак, мы знаем, что период поставки товара от момента размещения заказа поставщику до момента его оприходования на склад составляет 4 недели. Это позволяет нам предположить, что за 4 недели мы можем продать товар в объёме четырёх средненедельных продаж.
Если брать во внимание наш пример, то прогноз продаж можно рассчитать по формуле:
ПрПр = ПерПост * СНП,
где ПрПр – прогноз продаж, штук;
ПерПост – период поставки заказа, недель;
СНП – средненедельные продажи, штук.
ПрПр = 4 недели * 4 штуки = 16 штук
Чтоб рассчитать прогнозный остаток на момент оприходования текущего заказа, нужно воспользоваться следующей формулой:
ПрОст = ОстСкл + ОстПуть – ПрПр,
где ПрОст – прогнозный остаток товара, штук;
ОстСкл – текущий остаток товара на складе компании, штук;
ОстПуть – остаток товара в пути, штук;
ПрПр – прогнозный уровень продаж в период поставки новой партии товара, штук.
Используя приведённый пример со статистикой, рассчитаем прогнозный остаток на момент оприходования поставки, которую мы сейчас рассчитываем:
ПрОст = 5 + 8 – 16 = -3
Прогнозный остаток является отрицательным, что говорит нам о том, что текущего остатка и товара в пути будет на 3 штуки меньше, чем мы планируем продать.
Как вы понимаете, прогнозный остаток не может быть отрицательным, так как компания не сможет продать товар, которого у неё нет. Будет, скорее всего, так: на склад компании к 5 штукам поступит ещё 8 штук товара, что в итоге составит 13 штук; так как обычно спрос равен в среднем 4 штуки в неделю, то 13 штук компания продаст за 3 (с небольшим) недели и ещё 1 неделю будет отсутствовать товар на складе и будет фиксироваться неудовлетворённый спрос в размере 3 штук (16 штук – 13 штук).
В любом случае на момент оприходования новой поставки товара, которая сейчас рассчитывается, на складе компании будет отсутствовать товар.
Рекомендуемое количество товара к заказу можно рассчитать по следующей формуле:
РекЗак = ОптЗап – ПрОст,
где РекЗак – количество товара, рекомендуемое к заказу, штук;
ОптЗап – уровень оптимального запаса, необходимый для обеспечения продаж до следующей поставки, штук;
ПрОст – прогнозный остаток товара на момент прихода текущего заказа, штук.
Используя рассчитанный уровень оптимального запаса в предыдущей статье, определим рекомендуемый заказ:
РекЗак = 15,35 штук – 0 штук = 15,35 штук
Так как обычно заказывается к поставке товар, выраженный в целых, а не дробных числах, то к поставке заказываем не 15,35 штук, а 16 штук.
Таким образом, мы планируем, что на момент поставки текущего заказа на нашем складе не будет товара. Мы привезём новую партию в размере 16 штук. Из этих 16 штук 8 штук товара необходимы для обеспечения продаж в течении следующих 2 недель, пока не будет доставлен товар по очередному заказу (в предыдущей статье мы упоминали, что периодичность размещения плановых заказов нашем примере – 2 недели). Также из 16 штук товара мы на склад размещаем 4 штуки на случай, если произойдёт сбой следующей поставки (обычно 1 неделя). И ещё 4 штуки (3,35 шт.) по расчёту мы размещаем на склад компании для компенсации всплесков, которые обычно находятся на уровне 84% от средненедельных продаж.
Нюанс
При расчёте прогнозного остатка на момент оприходования текущего заказа обратите внимание на товар, который находится в пути. Выше описанный расчёт будет корректен в том случае, если поступление «товара в пути» будет равномерным.
А теперь представьте, что 8 штук товара, который числиться в пути, оприходуется не равномерно, а на 4 неделе. Какой плановый остаток будет в этом случае?
За первую неделю, скорее всего, компания из 5 штук продаст 4 штуки, и на начало второй недели на остатке будет числиться 1 штука товара.
В течении второй недели не будет поставки товара, поэтому компания продаст 1 штуку и на начало 3 недели у неё на складе будет отсутствовать товар.
В течении третей недели также не планируется поступление товара, поэтому при имеющемся спросе в размере 4 штук товара компания будет иметь нулевые продажи.
В свою очередь на начало 4 недели на складе будет числиться ноль штук товара. В течении недели на склад должно поступить 8 штук товара. Если поступление будет в начале недели, то компания успеет продать 4 штуки товара (а возможно и больше, так как будет присутствовать неудовлетворённый спрос за прошлые периоды). Таким образом, на момент оприходования текущего заказа будет не 0 штук товара, который мы рассчитали раньше при равномерном поступлении «товара в пути», а 4 штуки, так как поступление товара будет не равномерным. Поэтому рекомендуемый заказ в данном случае будет равен:
РекЗак = ОптЗап – ПрОст = 16 штук – 4 штуки = 12 штук
Ваша задача – учесть плановое поступление товара максимально точно, чтобы прогнозирование планового остатка на момент оприходования текущего заказа было наиболее корректным.
Ниже на рисунке представлена описанная в данной статье методика расчёта рекомендуемого заказа для разных товарных позиций.
С помощью формы ниже Вы можете скачать данный пример в файле MS Excel и изучить более детально формулы, которые применяются для расчёта описанной методики рекомендуемого заказа.
Цитата:
ivanos Дело в том что это у нас новшество такое а я вообще только месяц тут работаю. Раньше это не делаось у нас поэтому выкладывать к сожалению мне нечего
Тем лучше для вас — значит у вас система закупок сложилась сама собой и обычно это означает, что очень простыми мерами можно существенно улучшить ситуацию. Вы же в результате будете герой №1.
Цитата:
ivanos Валерий Расскажите о каждом пункте поподробнее…
Как мы уже выяснили выше, в вашем случае можно делать всё на самом простом уровне, так как уже это принесёт нужный эффект — исходя из этой предпосылки и буду описывать все пункты.
Спрогнозировать спрос.
Чтобы знать, чего купить, вы должны знать, а что у вас продастся. И желательно, чтобы под этими числами подписался отдел продаж. Но они сами выдумывать ничего не захотят, поэтому вы должны спрос спрогнозировать — а их уже заставить подписаться под вашими числами, или изменить на свои (под бдительным оком директора). Задачу появления первых чисел и решает прогнозирование спроса. Раз для вас это новость — значит, скорей всего, эту функцию выполняет каждый закупщик в момент заказа, в лучшем случае смотря в этот момент на несколько чисел по каждой позиции. Поэтому вам нужно взять любую модель прогнозирования — начинать можно с наивных (это научное название, а не пренебрежительная характеристика) и воспользовавшись ей получить искомые прогнозные значения.
Определить оптимальный уровень удовлетворения спроса остатками.
Поднять его до требуемого там, где это необходимо по политическим (маркетинговым) соображениям.
Пока на это можно не заморачиваться. Сделайте перекрёстный АВС-анализ по частоте покупок XYZ-анализ по объёму закупок за два периода между поставками, и назначьте каждой группе какой-нибудь коэффициент. Например: Ках = 2; Каy = 3; Каz = 4; Квx = 1,5; Квy = 2; Квz = 2,5; Ксx = 1,25; Ксy = 1,5; Ксz = 1,75.
Пользуясь моделью с фиксированным сроком поставки, рассчитать необходимый страховой запас.
Для начала можно покупать, столько, сколько запланируют в отделе продаж и умножив на коэффициент соответствующей группы, полученный в предыдущем пункте. А далее каждую позицию — дополнительно на некоторый процент больше. Сам же этот процент для каждой позиции получать динамически — повышать его на сколько-то (например на 10%) в каждом случае наступления дефицита по этой позиции.
Рассчитать оптимальную величину заказа каждому поставщику.
Для начала посмотреть с какой периодичностью вы у каждого поставщика забираете продукцию и понять, что будет с вашими затратами на транспорт и замороженные в запасы деньги, если вы станете ездить к нему в два раза чаще или в два раза реже — вас интересует изменение совокупных издержек. В случаях, где это выгодно, поменять периодичность поставок. Если поставщик поставляет бесплатно — то посмотреть не будет ли вам выгоднее забирать самим, но возить чаще и замораживать в запасы — меньше, если нет, то возить с максимальной возможной частотой поставок (обычно упирается в минимальную сумму заказа).
Рассчитать потребность по поставщикам.
У вас есть ожидаемый спрос, есть имеющиеся остатки, есть то, что уже едет — первое минус второе и третье — и есть ваша потребность.
Разместить все поставки в календаре (равномерно размазав их по месяцу).
Просто, для каждого поставщика отсчитать от последних поставок в прошлом старую периодичность поставок, а от полученных дат дальше прибавлять уже новую периодичность поставок. Все отмеченные даты забивать за приходами от этих поставщиков. Там, где наложится много или большие поставки на один день, сместить одну из них на день раньше — соответственно это потянет за собой и смещение всей последующей цепочки приходов для этого поставщика на один день раньше.
Отнять срок реагирования каждого поставщика от даты поставки, чтобы получить дату заявки.
Есть даты, когда вы должны получить свою продукцию от каждого поставщика, есть срок в течение которого он будет выполнят ваш заказ — отнимаете этот срок от этих дат и получаете даты заявки.
Прибавить срок производства поставщика, чтобы получить дату отгрузки.
Прибавляете к получившимся в предыдущем пункте датам сроки производства у каждого поставщика и получаете даты отгрузки у этих поставщиков.
Цитата:
ivanos В любом случае задача у меня стоит и ее нужно выполнять. Пусть у меня все будет намного проще чем нужно но ведь главное начать и двигаться в правильном направлении!
Правильный подход! Сначала — сделать грубую систему, а потом её уточнять там, где это больше всего нужно, или там, где это проще всего. А вообще, я бы в вашем случае сейчас разобрался со справочником номенклатуры — чтобы хотя бы к нему не было серьёзных нареканий, и ещё разбил бы всю номенклатуру на то, что в принципе, нужно закупать к себе на склад (регулярно покупают), и что — ни в коем случае нельзя закупать без оплаченного заказа клиента (покупают слишком редко). Заодно выяснились бы объёмы неликвидов — и лучше сейчас их зафиксировать у руководства, чтобы потом когда начнут оценить результаты вашей деятельности, считать их отдельно. Но, задание руководства — это задание руководства, понятное дело, что оно приоритетней.
Содержание
- Общее описание транспортной задачи
- Инструменты для решения транспортной задачи в Эксель
- Пример решения транспортной задачи в Excel
- Условия задачи
- Решение задачи
- Вопросы и ответы
Транспортная задача представляет собой задачу поиска наиболее оптимального варианта перевозок однотипного товара от поставщика к потребителю. Её основой является модель, широко применяемая в различных сферах математики и экономики. В Microsoft Excel имеются инструменты, которые значительно облегчают решение транспортной задачи. Выясним, как их использовать на практике.
Общее описание транспортной задачи
Главной целью транспортной задачи является поиск оптимального плана перевозок от поставщика к потребителю при минимальных затратах. Условия такой задачи записываются в виде схемы или матрицы. Для программы Excel используется матричный тип.
Если общий объем товара на складах поставщика равен величине спроса, транспортная задача именуется закрытой. Если эти показатели не равны, то такую транспортную задачу называют открытой. Для её решения условия следует привести к закрытому типу. Для этого добавляют фиктивного продавца или фиктивного покупателя с запасами или потребностями равными разнице между спросом и предложением в реальной ситуации. При этом в таблице издержек добавляется дополнительный столбец или строка с нулевыми значениями.
Инструменты для решения транспортной задачи в Эксель
Для решения транспортной задачи в Excel используется функция «Поиск решения». Проблема в том, что по умолчанию она отключена. Для того, чтобы включить данный инструмент, нужно выполнить определенные действия.
- Делаем перемещение во вкладку «Файл».
- Кликаем по подразделу «Параметры».
- В новом окне переходим по надписи «Надстройки».
- В блоке «Управление», который находится внизу открывшегося окна, в выпадающем списке останавливаем выбор на пункте «Надстройки Excel». Делаем клик по кнопке «Перейти…».
- Запускается окно активации надстроек. Устанавливаем флажок возле пункта «Поиск решения». Кликаем по кнопке «OK».
- Вследствие этих действий во вкладке «Данные» в блоке настроек «Анализ» на ленте появится кнопка «Поиск решения». Она нам и понадобится при поиске решения транспортной задачи.
Урок: функция «Поиск решения» в Экселе
Теперь давайте разберем конкретный пример решения транспортной задачи.
Условия задачи
Имеем 5 поставщиков и 6 покупателей. Объёмы производства этих поставщиков составляют 48, 65, 51, 61, 53 единиц. Потребность покупателей: 43, 47, 42, 46, 41, 59 единиц. Таким образом, общий объем предложения равен величине спроса, то есть, мы имеем дело с закрытой транспортной задачей.
Кроме того, по условию дана матрица затрат перевозок из одного пункта в другой, которая отображена на иллюстрации ниже зеленым цветом.
Решение задачи
Перед нами стоит задача при условиях, о которых было сказано выше, свести транспортные расходы к минимуму.
- Для того, чтобы решить задачу, строим таблицу с точно таким же количеством ячеек, как и у вышеописанной матрицы затрат.
- Выделяем любую пустую ячейку на листе. Кликаем по значку «Вставить функцию», размещенному слева от строки формул.
- Открывается «Мастер функций». В списке, который предлагает он, нам следует отыскать функцию СУММПРОИЗВ. Выделяем её и жмем на кнопку «OK».
- Открывается окно ввода аргументов функции СУММПРОИЗВ. В качестве первого аргумента внесем диапазон ячеек матрицы затрат. Для этого достаточно выделить курсором данные ячейки. Вторым аргументом выступит диапазон ячеек таблицы, которая была приготовлена для расчетов. Затем, жмем на кнопку «OK».
- Кликаем по ячейке, которая расположена слева от верхней левой ячейки таблицы для расчетов. Как и в прошлый раз вызываем Мастер функций, открываем в нём аргументы функции СУММ. Кликнув по полю первого аргумента, выделяем весь верхний ряд ячеек таблицы для расчетов. После того, как их координаты занесены в соответствующее поле, кликаем по кнопке «OK».
- Становимся в нижний правый угол ячейки с функцией СУММ. Появляется маркер заполнения. Жмем на левую кнопку мыши и тянем маркер заполнения вниз до конца таблицы для расчета. Таким образом мы скопировали формулу.
- Кликаем по ячейке размещенной сверху от верхней левой ячейки таблицы для расчетов. Как и в предыдущий раз вызываем функцию СУММ, но на этот раз в качестве аргумента используем первый столбец таблицы для расчетов. Жмем на кнопку «OK».
- Копируем маркером заполнения формулу на всю строку.
- Переходим во вкладку «Данные». Там в блоке инструментов «Анализ» кликаем по кнопке «Поиск решения».
- Открываются параметры поиска решения. В поле «Оптимизировать целевую функцию» указываем ячейку, содержащую функцию СУММПРОИЗВ. В блоке «До» устанавливаем значение «Минимум». В поле «Изменяя ячейки переменных» указываем весь диапазон таблицы для расчета. В блоке настроек «В соответствии с ограничениями» жмем на кнопку «Добавить», чтобы добавить несколько важных ограничений.
- Запускается окно добавления ограничения. Прежде всего, нам нужно добавить условие того, что сумма данных в строках таблицы для расчетов должна быть равна сумме данных в строках таблицы с условием. В поле «Ссылка на ячейки» указываем диапазон суммы в строках таблицы расчетов. Затем выставляем знак равно (=). В поле «Ограничение» указываем диапазон сумм в строках таблицы с условием. После этого, жмем на кнопку «OK».
- Аналогичным образом добавляем условие, что столбцы двух таблиц должны быть равны между собой. Добавляем ограничение, что сумма диапазона всех ячеек в таблице для расчета должна быть большей или равной 0, а также условие, что она должна быть целым числом. Общий вид ограничений должен быть таким, как представлен на изображении ниже. Обязательно проследите, чтобы около пункта «Сделать переменные без ограничений неотрицательными» стояла галочка, а методом решения был выбран «Поиск решения нелинейных задач методом ОПГ». После того, как все настройки указаны, жмем на кнопку «Найти решение».
- После этого происходит расчет. Данные выводятся в ячейки таблицы для расчета. Открывается окно результатов поиска решения. Если результаты вас удовлетворяют, жмите на кнопку «OK».
Как видим, решение транспортной задачи в Excel сводится к правильному формированию вводных данных. Сами расчеты выполняет вместо пользователя программа.
Еще статьи по данной теме: