EOQ - это количество заказа на пополнение, которое минимизирует общие затраты на запасы. Заказ на пополнение выполняется, когда уровень запасов достигает точки повторного заказа. EOQ рассчитывается с целью минимизации комбинации затрат, таких как стоимость закупки (которая может включать объемные скидки), стоимость хранения запасов, стоимость заказа и т. д. Оптимизация объема заказа является дополнением к оптимизации резервного запаса, которая направлена на поиск оптимального порога для выполнения повторного заказа.
Модель и формула
Классическая формула EOQ (см. формулу Уилсона ниже) является, по сути, компромиссом между стоимостью заказа, предполагаемой плоской платой за заказ, и стоимостью хранения запасов. Хотя эта формула, датирующаяся 1913 годом, крайне известна, мы рекомендуем не использовать такую формулу в современной цепи поставок. Основные математические предположения, лежащие в основе этой формулы, просто неверны в настоящее время.
Историческая формула предполагает, что стоимость акта заказа является ключевым фактором бизнеса. Она, конечно, была важным фактором в 1913 году, когда для ведения учета требовалось армия клерков, но с программным обеспечением для управления запасами и, возможно, EDI, этот фактор обычно незначителен. В результате “оптимизация”, выполняемая формулой, имеет мало смысла и полностью игнорирует любые скидки, которые могут быть доступны при заказе больших объемов.
Скачать файл Excel: eoq-calculator.xlsm (иллюстрированный расчет)
Таким образом, мы предлагаем вариант формулы EOQ, который оптимизирует компромисс между затратами на хранение и объемными скидками. Введем переменные:
- $${Z}$$ - ведущий спрос.
- $${H}$$ - стоимость хранения единицы на протяжении срока поставки (1).
- $$\delta$$ - дельта запаса, необходимая для достижения точки перезаказа (2).
- $${P}$$ - цена покупки за единицу, функция, зависящая от объема заказа q.
(1) Рассматривается временной интервал срока поставки. Таким образом, вместо обычной годовой стоимости хранения $$H_y$$ мы рассматриваем $$H = \frac{d}{365}H_y$$, предполагая, что $$d$$ - это срок поставки, выраженный в днях.
(2) Дельта количество должно учитывать как запас на руках $$q_{hand}$$, так и запас на заказе $$q_{order}$$, что дает соотношение $$\delta = R - q_{hand} - q_{order}$$, где $$R$$ - это точка перезаказа. Интуитивно, $$\delta+1$$ - это минимальное количество, которое нужно заказать, чтобы поддерживать желаемый уровень обслуживания.
Несмотря на свой кажущийся сложный вид, эта функция может быть легко вычислена с помощью Microsoft Excel, как показано на предоставленном листе.
Что насчет стоимости заказа?
С первого взгляда может показаться, что мы предполагаем нулевую стоимость заказа, но на самом деле это не так. Действительно, введенная нами здесь структура относительно гибкая, и стоимость заказа (если есть) может быть включена в функцию цены $$\mathcal{P}$$.
Функция стоимости
Чтобы моделировать функцию стоимости для объема заказа, учитывающую объемные скидки, давайте введем $${R}$$ - точку перезаказа. Стоимость запаса - это сумма стоимости хранения запаса и стоимости закупки, то есть
Действительно, принимая амортизированную точку зрения на промежуток времени поставки, общий объем заказа будет равен $${Z}$$ прогнозируемому спросу.
Затем уровень запаса постоянно меняется, но если мы рассмотрим строго минимальные повторные заказы (т.е. $${q=δ+1}$$), то средний уровень запаса со временем будет равен $${R}$$ - точке перезаказа. Затем, поскольку мы рассматриваем именно объем заказа, превышающий $${δ+1}$$, эти дополнительные заказанные количества сдвигают вверх средний уровень запаса (и также откладывают время, когда будет достигнута следующая точка перезаказа).
$${(q−δ−1)/2}$$ представляет собой сдвиг запаса, вызванный повторным заказом, предполагая, что прогнозируемый спрос равномерно распределен на протяжении времени поставки. Фактор $${1/2}$$ обоснован тем, что увеличенное количество заказа $${N}$$ только увеличивает средний уровень запаса на $${N/2}$$.
Минимизация функции стоимости
Чтобы минимизировать $${C(q)}$$, мы можем начать с выделения части, которая не зависит от $${q}$$, с помощью:
Поскольку $${RH}$$ не зависит от $${q}$$, оптимизация $${C(q)}$$ эквивалентна оптимизации $${C∗(q)}$$, где:
Таким образом, в этом контексте, поскольку функция объемной скидки $$\mathcal{P}$$ является произвольной функцией, нет прямого алгебраического решения для минимизации этой формулы. Однако это не означает, что эта минимизация трудна для решения.
Простое минимизирование для $${C^∗(q)}$$ состоит в (наивном) обширном численном исследовании, то есть вычислении функции для большого диапазона значений $${q}$$. Действительно, практически ни одному бизнесу не требуется заказывать количество товара более 1 000 000 единиц, и позволить компьютеру исследовать все значения стоимости для $${q=1..1,000,000}$$ занимает менее 1 секунды, даже если вычисления выполняются в Excel на обычном настольном компьютере.
Однако на практике этот расчет может быть значительно ускорен, если мы предположим, что $$\mathcal{P}(q)$$ является строго убывающей функцией, то есть цена за единицу строго уменьшается при увеличении объема заказа. Действительно, если $$\mathcal{P}(q)$$ уменьшается, то мы можем начать исследование значения с $${q=δ+1}$$, итерировать и, наконец, остановиться, когда встретится ситуация $${C^∗(q+1)>C^∗(q)}$$.
На практике цена за единицу редко увеличивается с увеличением количества, однако некоторые локальные всплески на кривой могут быть замечены, если отправки оптимизированы для паллетов или любого другого контейнера, который предпочитает определенные размеры упаковки.
Формула Уилсона
Самая известная формула EOQ - это формула Уилсона, разработанная в 1913 году. Эта формула основана на следующих предположениях:
- Стоимость заказа постоянна.
- Скорость спроса известна и равномерно распределена в течение года.
- Срок поставки фиксирован.
- Цена за единицу покупки постоянна, то есть скидка недоступна.
Введем следующие переменные:
- $${D_y}$$ - годовой объем спроса
- $${S}$$ - фиксированная стоимость заказа (не стоимость за единицу, а стоимость, связанная с операцией заказа и доставки).
- $${H_y}$$ - годовая стоимость хранения
При этих предположениях оптимальное значение EOQ по формуле Уилсона равно:
На практике мы предлагаем использовать более локально настроенную вариацию (по времени) этой формулы, где $${D_y}$$ заменяется на $${D}$$ - прогнозируемая скорость спроса на протяжении срока поставки (также известная как спрос на протяжении срока поставки $${Z}$$, деленная на срок поставки), а $${H_y}$$ заменяется на $${H}$$ - стоимость хранения на протяжении срока поставки.
Сравнение двух формул EOQ
Для розничной или оптовой торговли мы считаем, что наша ад-хок формула EOQ, представленная в начале этой страницы и акцентирующаяся на объемных скидках, более подходит и, следовательно, более прибыльна, чем формула Уилсона. Для производителей это зависит. В частности, если заказ вызывает новое производство, то, действительно, может возникнуть значительная стоимость заказа (настройка производства) и мало или нет преимуществ в предельной стоимости единицы после этого. В такой ситуации более подходящей является формула Уилсона.