Спрос, изменяющийся во времени

Материал из Supply Chain Management Encyclopedia

Версия от 18:54, 23 августа 2011; Zyatchin (обсуждение | вклад)
(разн.) ← Предыдущая | Текущая версия (разн.) | Следующая → (разн.)
Перейти к: навигация, поиск

English: Time-varying demands

В этом разделе рассматриваются модели, в которых спрос (в отдельных случаях – и закупочная цена) меняется во времени time [1].

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

1. Частные случаи

Рассмотрим модель управления запасами с теми же прдположениями, что и в модели экономичного размера запасов с одним изменением: спрос меняется со временем, функция спроса имеет вид: \, \lambda (t). Стоимость остаются неизменной.

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

1.1 Малые изменения спроса

Предположим, что спрос \, \lambda (t) изменяется во времени незначительно, а именно: пусть имеется некоторый уровень среднего спроса \,\lambda и \, \lambda (t) отклоняется от \,\lambda на несколько процентов.

Так как \, \lambda (t) почти постоянно, модель EOQ с постоянным спросом \,\lambdaявляется почти правильной. Если мы используем постоянную величину заказа \,q , функция затрат в модели EOQ \,C(q) достаточно точно описывает реальные затраты. Кроме того, если мы будем использовать постоянное время цикла \,u , то \, C(u) является хорошим приближением. В итоге, стратегия, полученная в модели EOQ ((\,q^*или \,u^*) должна быть близка к оптимальной и затраты \,C^* достаточно точно аппроксимируют истинное значение затрат в случае малого изменения спроса.

1.2 Быстрые изменения спроса

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

Предположим, что функция \, \lambda (t) имеет высокую частоту изменения относительно среднего значения \,\lambda. Для каждого \,t обозначим через \,\underline{\lambda }(t) среднее значение \,\lambda (\cdot ) в окрестности \,t. Случай, когда \,\underline{\lambda }(t) близка по значению или совпадает с \,\lambda будем называть быстрым изменением спроса:

Ez72.jpg

В случае быстрого изменения спроса можем использовать модель экономичного размера заказа.

1.3. Медленные изменения

Рассмотрим противоположный случай. Пусть \, \lambda (t) меняется медленно. Идея решения состоит в том, что \, \lambda (t) отличатся от константы незначительно в течение достаточно большого промежутка времени.

Например, обозначим

\,u(t)=\sqrt{\frac{2k}{\lambda (t)h} } .

Имеем оптимальную длину интервала заказа, рассчитанную для каждого момента \,t , если бы скорость расходования запаса имела значение \, \lambda (t). Одним из способов определить медленные изменения спроса является предположение о том, что \,\lambda (\cdot ) меняется незначительно на интервале \,{t, t }+ \textit{u}(\textit{t}) .

Стратегия управления запасами в данном случае принимает вид: проводить заказ в случае полного использования ресурсов в размере:

(1) \, q(t)=\sqrt{\frac{2k\lambda (t)}{h} } .

1.4. Обсуждение

Подведем итог: если изменения \, \lambda (t) являются малыми или достаточно частыми, в качестве оценки \, \lambda (t) можно рассматривать величину \,\lambda, игнорируя текущее значение \, \lambda (t). Если \, \lambda (t) изменяется медленно, то такие изменения можно игнорировать.

Рассмотрим оба частных случая вместе. Пусть \, \lambda (t) является суммой трех функций: малых, быстрых и медленных изменений. То есть значение \,\underline{\lambda }(t)изменяется медленно. В соответствии с рассуждениями, приведенными выше, в качестве решения можно использовать значение \,q(t) в соответствии с выражением (1), используя \,\underline{\lambda }(t) вместо \, \lambda (t).

1.5. Ограниченная скорость производства

Рассмотрим случай ограниченной скорости производства \,\mu . Малые или быстрые изменения \, \lambda (t), как и ранее, могут быть проигнорированы. Рассмотрим случай медленного изменения коэффициента потребления. Предположим, что функция \, \lambda (t) является непрерывной.

Наиболее простым является случай, при котором выполняется неравенство \,\lambda (t)<\mu для любого t. Определим \,\rho (t)=\lambda (t)/\mu и рассмотрим выражение

(2) \, q(t)=\sqrt{\frac{2k\lambda (t)}{h[1-\rho (t)]}}

Стратегия управления запасами, при которой используется определенный таким образом размер заказа \,q(t), является хорошим приближением к оптимальному решению в данном случае.

Очевидно, такой подход оказывается при \,\lambda (t)>\mu хотя бы для одного \,t. В этом случае спрос превышает производительность, рис. 2.

Ez71.jpg

Рис. 2. \,\lambda (t)>\mu

Горизонтальная линия показывает производительность \, \mu , кривая линия соответствует графику \, \lambda (t).

Пусть \,D(t)=\int _{0}^{t}\lambda (s)ds обозначает суммарный спрос. Для удовлетворения всего спроса, очевидно, должно выполняться условие: \,D(t)\le \mu t. Предположим, существует конечный момент времени \,t_{+} , такой, что \,\lambda (t)\le \mu для \,t\ge t_{+} . Выбираем \,t_{+} как можно меньшим. Вследствие непрерывности, \,\lambda (t_{+} )=\mu и для \,t \le t_{+} в малой окрестности \,t_{+} имеет место неравенство: \,\lambda (t)>\mu и \,D(t_{+} )-D(t)>\mu (t_{+} -t).

Продолжая уменьшать \,t это неравенство остается справедливым, до тех пор, пока \,\lambda (t) не становится меньше \,\mu . В следствие непрерывности, существует момент времени, при котором \,D(t_{+} )-D(t)=\mu (t_{+} -t) .

Пусть \,t\_ есть наибольшее значение \,t<t_{+} , удовлетворяющее этому неравенству. Следовательно, если к моменту времени \,t\_ запасы отсутствуют, мы должны начать производство по крайней мере до момента времени \,t_{+} .

Очевидно, \,\lambda (t_{-} )<\mu . Предположим, что \,\lambda (t)\le \mu для всех \,t\le t_{-} . В этом случае, эвристическое решение неприменимо только на интервале \,[t_{-} ,t_{+} ]. Из этого можно сформулировать новое эвристическое правило: использовать (2) до момента \,t\_ , далее производить непрерывно до момента \,t_{+} .

Пусть теперь при некотором \,t_{-} имеет место неравенство: \,\lambda (t)>\mu . Тогда в некоторый момент времени до \,t\_ ситуация является такой же, что представлена на рисунке. При этом рассматривается тот же подход, что и ранее: определить новый интервал \,[t_{-} ,t_{+} ] и запланировать производство по рассмотренной выше схеме.

Продолжим определять интервалы, в которых требуется относительно длительное производство для того, чтобы компенсировать дефицит запасов в коротком периоде. Вне этих интервалов, используем формулу (2) (такая процедура дает лишь эвристическое решение).

В результате применения такой схемы, на ранних этапах каждого цикла накапливается запас для того, чтобы удовлетворить спрос позднее в случае увеличения спроса. Такая схема применима и в случае, когда скорость производства меняется во времени, то есть \,\mu =\mu (t). Отдельно следует отметить случай, когда \,\mu (t) пропорционально \,\lambda (t) и , следовательно, \,\rho (t)=\frac{\lambda (t)}{\mu (t)} является константой \,\rho <1.

Выражение (2) принимает вид:

\,q(t)=\sqrt{\frac{2k\lambda (t)}{h(1-\rho )} } .

В рассматриваемой модели \,q(t) зависит от квадратного корня от \, \lambda (t). В общем случае для решения необходимо использование численных методов.

2. Динамическая модель

2.1. Дискретный случай

В этом разделе формулируется и анализируется аналог модели экономичного размера запаса, в котором спрос и закупочная цена могут изменяться во времени.

Будем рассматривать время как конечную последовательность моментов времени. Также будем рассматривать временные интервалы – промежутки между моментами времени. При этом будем предполагать, что все события происходят исключительно в отдельные моменты времени.

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

Каждый заказ влечет за собой издержки независимо от размера заказа. Определены затраты на хранение между двумя любыми моментами времени. Эти затраты, как и спрос, могут изменяться во времени. Целью является определить такой план, при котором минимизируются общие затраты на всем временном интервале.

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

\,T – продолжительность планирования

\,t – моменты времени, \,t=0, \cdots,T

Продолжительность планирования \,T – конечная.

\, d(t) – спрос в момент времени \,t. \, x(t) – объем запасов в момент времени \,t \, z(t) – объем заказа в момент времени \,t. Начальный запас в момент времени \,t=0 является заданной константой \,x_{0} .

Будем использовать обозначение \, d(t) вместо \, \lambda (t) для того, чтобы подчеркнуть, что рассматривается дискретная модель. По этой же причине, будем использовать обозначение \, z(t) вместо \, q(t), и \, x(t) вместо \, I(t) . Последовательность событий в каждый момент времени следующая:

1. Наблюдаем уровень запаса \, x(t) . 2. Определяем размер заказа \, z(t) .

Далее во время периода \,t поступает заказ и реализуется спрос \, d(t) . В какой именной момент это происходит не имеет значения, важно лишь определить \,x(t + 1) в момент \,t + 1.

Рассмотрим параметры, характеризующие издержки:

\,k(t) = фиксированные затраты на оформление заказа в момент \,t. \,c(t) = переменные затраты в момент \,t, \,h(t) = удельные затраты на хранение в момент \,t.

Все перечисленные переменные принимают неотрицательные значения. Рассмотрим функцию \,\delta (\cdot ) такую, что \,\delta (z)=1 для \,z>0 и \,\delta (z)=0 для \,z\le 0. Таким образом, суммарные затраты на оформление заказа в момент времени можно определить по формуле:

\,k(t)\delta (z(t))+c(t)z(t).

Общие затраты на хранение в момент времени \,t имеют вид \,h(t)x(t). Мы не будем рассматривать начальные затраты (константу) \,h(0)x(0)=h(0)x_{0} , но учтем затраты в конечный момент времени: \,h(T)x(T).

В результате математическая модель принимает вид:

Начальные условия:

(3) \, x(0)=x_{0}

Динамика

(4) \,x(t+1)=x(t)+z(t)-d(t),\, \, \, \, \, t=0,\cdots,T-1

Ограничения:

\,x(t)\ge 0,\, \, \, \, \, t=1,\cdots,T

(5) \,z(t)\ge 0,\, \, \, \, \, t=1,\cdots,T-1

Целевая функция

(6) \, \sum _{t=0}^{T-1}[k(t)\delta (z(t))+c(t)z(t)]+\sum _{t=1}^{T}h(t)x(t)

Такую оптимизационную модель будем называть динамической экономичной моделью запаса или dynamic economic lotsize (DEL) model.

Рассмотрим дополнительные обозначения:

\,D(t) – суммарный спрос к моменту времени \,t,

\,D(t)=\sum _{s=0}^{t}d(s) ,

\,D [t, u) – суммарный спрос с момента \,t до момента .

\,D[t,u)=D(u-1)-D(t-1),\, \, \, \, t\le u

\,\tilde{c}[t,u) – переменные затраты, связанные с заказом единицы ресурса в момент \,t и хранением до момента .

\,\tilde{c}[t,u)=c(t)+\sum _{s=t+1}^{u}h(s),\, \, \, \, t\le u

Модель DEL может быть переформулирована с тем, чтобы исключить из целевой функции нелинейную функцию \,\delta , посредством введения новой бинарной функции \,v(t). Здесь \,v(t) принимает значение, равное 1, если заказа происходит в момент времени \,t и значение 0 – если заказа отсутствует (стандартны прием, используемый в целочисленном программировании). При этом в модель необходимо ввести новые ограничения:

\,v(t)\in \{ 0,1\}

\,z(t)\le D[t,T)v(t)\, \, \, \, t=1,\cdots,T-1 .

Целевая функция при этом становится линейной:

Минимизировать

(7) \,\sum _{t=0}^{T-1}[k(t)v(z(t))+c(t)z(t)]+\sum _{t=1}^{T}h(t)x(t)

Таким образом, модель DEL может быть представлена как задача целочисленного программирования.

2.2. Случай линейных затрат

Случай линейных затрат, в котором \,k(t)=0, является простым для рассмотрения, при этом решение может быть найдено в явном виде.

Предположим, что все затраты \,c(t) являются постоянной величиной \,c\ge 0. Решение очевидно. Пусть \,x(t) =0, предположим \,z(t) = d(t) и \,x(t) =0. При этом, если \,x_{0} >0, заказ равен нулю до тех пор, пока начальный запас не израсходуется. С этого момента необходимо заказывать минимальный уровень для поддержания запаса на уровне \,x(t)\ge 0.

Предположим, что переменная \,c(t) зависит от \,t. Основной идеей здесь является поддержания запаса затрат на оформление и хранение заказа: мы можем избежать издержек, связанных с дефицитом, заказывая раньше, но непременно увеличим затраты на хранение.

Предположим теперь, что \,x_{0} =0. Рассмотрим произвольный момент времени \,t и спрос на уровне единицы ресурса. Для удовлетворения спроса, можно заказать единицу ресурса в любой момент времени \,s\le t. Если был выбран момент времени \,s, общие затраты составляют \,\tilde{c}[s,t).. Эти затраты включают в себя затраты, связанные с покупкой и с хранением запасов начиная с момента \,s и заканчивая моментом \,t. Для минимизации этих затрат, рассмотрим

(8) \, \tilde{c}[*,t)=\mathop{\min }\limits_{s} \{ \tilde{c}[s,t):0\le s\le t\}

и рекурсию

(9) \,\tilde{c}[*,0)=c(0)

\,\tilde{c}[*,t+1)=\min \{ \tilde{c}[*,t)+h(t+1),c(t+1)\}

Таким образом, возможны два значения для \,\tilde{s}(t+1): если первое выражение в скобках меньше, тогда \,\tilde{s}(t+1)=\tilde{s}(t). Если второе выражение меньше, тогда \,\tilde{s}(t+1)=t+1.

2.3 Нулевой запас

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

Пусть \,x_{0} =0. Заказы должны быть запланированы так, чтобы запасы заканчивались в момент выполнения заказа. Это правило работает и в более общем случае \,x_{0} \ge 0 при незначительном изменении: первый заказ может поступить и при положительном запасе (но только первый). Формально это правило можем описать следующим образом:

Теорема. Существует оптимальное решение math>\,x^*(t), z^*(t)</math> уравнений (3)-(6) такое, что \,z^*(t) > 0 только в случае \,x^*(t) = 0 для каждого момента \,t кроме начального момента времени.

Условия теоремы предполагают, что свойство нулевого запаса выполняется и в нестационарном случае.

2.4 Сетевая интерпретация и решение

Для решения модели DEL основной задачей является выбор моментов времени.

Рассмотрим случай \,x_0 = 0. Такая задача может быть описана в сетевой постановке: вершины соответствуют моментам времени \, t=0,\cdots,T.

Дуги соответствуют парам \, (t,u), где \, t<u . Каждый способ выбора моментов заказа соответствует пути в данной сети от вершины 0 до вершины \, T и наоборот.

Рассмотрим один путь и дугу \, (t,u) в этом пути. Выбор этой дуги означает, что \,t является моментом заказа, и мы заказываем ровно столько, чтобы удовлетворить спрос в моменты времени \, t,\cdots,u-1.

Пусть \, k[t,u) обозначает суммарные затраты. Связанные с таким решением. Динамика имеет вид:

\,z(t)=D[t,u),x(t+1)=z(t)-d(t)=D[t+1,u), и \,x(s+1)=x(s)-d(s)=D[s-r,u) for \,t<s<u

Таким образом

(10) \, k[t,u)=k(t)+c(t)z(t)+\sum _{s=t+1}^{u}h(s)x(s)=k(t)+\sum _{s=t}^{u-1}\tilde{c}[t,s)d(s)

Теперь рассмотрим \, k[t,u) для всех дуг в пути. Их сумма описывает суммарные затраты, связанные с выбранным путем.

Вычислим \, k[t,u) для каждой дуги \, (t,u) в сети и рассмотрим \, k[t,u) как транспортные затраты вдоль дуги \, (t,u). Для того, чтобы определить оптимальную последовательность моментов заказа, необходимо найти путь минимальной стоимости.

References

  1. Zipkin P. (2000) Foundations of inventory management; The McGraw-Hill Companies, Inc.
Личные инструменты
Our Partners