Смекни!
smekni.com

Автоматизация многономенклатурных закупок без фиксирования периода между поставками (стр. 3 из 3)

Z – текущая закупочная цена позиции [Рублей / Единицу];

– средний спрос за день по позиции [Единиц / День];

L – время доставки от поставщика [Дней].

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

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

По сути, эта функция показывает вероятность наступления случайного события (заказной поставки от поставщика) в течение 1 дня, 2 дней, 3 дней, и так далее – х дней, пока это событие не станет практически достоверным (F(х) = 1).

Теперь, чтобы учесть влияния потока заказных поставок, нам надо найти такой скорректированный период между поставками, при котором:

, где:

Т – скорректированный период между поставками [Дней];

E(х) – функция выгоды от пополнения складских позиций вместе с заказными [Рублей / День];

Н – альтернативная доходность вложенных в запасы денег [% / День];

Q – максимально допустимый период между поставками по складским позициям поставщика [Дней];

– средний спрос за день по позиции [Единиц / День];

Z – текущая закупочная цена позиции [Рублей / Единицу];

D – средняя стоимость доставки от поставщика [Рублей];

F(х) – дискретная ступенчатая функция распределения вероятностей осуществления заказной поставки от поставщика в течении х дней после предыдущей [%].

Эта формула показывает, что мы выигрываем от поставки складских позиций вместе с заказными. Первое слагаемое отвечает за изменения затрат на содержание запасов – оно будет равно разнице в днях (Q – T), умноженной на средние продажи по позициям поставщика в закупочных ценах

, и на стоимость замороженных денег H. Второе слагаемое даёт нам транспортную составляющую затрат, которая зависит от стоимости доставки D и того, на сколько изменяется вероятность осуществления заказной поставки по отношению к периоду за который мы смотрим эту вероятность Q или T (а значит, и по отношению к количеству поставок за фиксированный период: 1 / Q и 1 / T – соответственно). Оба этих слагаемых в зависимости от параметра Т могут принимать как положительное, так и отрицательное значение, а полученное в итоге значение Т, которое будет максимизировать функцию Е(Т), и будет определять оптимальный объём заказ поставщику, в худшем случае равняясь Q, при котором значение функции будет заведомо равно нулю: E(Q) = 0.

Формирование графика предстоящих отгрузок.

Все ожидаемые поставки рекомендуется вносить в информационную систему компании с датами ожидаемой поставки – это позволяет в автоматизированном режиме отслеживать все задержки, недопоставки, пересорты и отличие цен в приходных накладных от цен в заказе. А если мы плюс к этим датам возьмём ещё и даты ожидаемой отгрузки у поставщика из точек заказа по позициям: Gi = I , то сможем понять, в каком объёме нам надо дозаказывать другие позиции, по которым точка заказа ещё не наступила. Поэтому расчёт точек дозаказа по позициям какого-либо поставщика должен производиться только после очередного расчёта точек заказа по всем позициям этого поставщика. В результате мы получаем данные о количестве дней до ожидаемых отгрузок от поставщика: {Gi}. Тогда заказ по позиции будет производиться, только если существует такая ожидаемая отгрузка, что срок производства этой позиции будет равен времени до этой отгрузки:

, где:

Gi – количество дней до i-той отгрузки, ожидаемой от поставщика по графику предстоящих отгрузок [Дней];

I – время производства поставщиком этой позиции до отгрузки [Дней].

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

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

, где

Gi – количество дней до i-той отгрузки, ожидаемой от поставщика по графику предстоящих отгрузок [Дней];

Т – скорректированный период между поставками [Дней].

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

Расчёт потребности по позиции поставщика, в случае достижения по ней точки дозаказа.

Расчёт заказа осуществляется только для тех позиций, по которым была достигнута точка дозаказа (для позиций, по которым была достигнута точка заказа, точка дозаказа достигается автоматически). По аналогии с получением ряда {С0j} рассчитываем и ряд для суммированного спроса за количество дней до следующей поставки {С1j}:

, где:

C1j – j-тая сумма спроса по позиции за количество дней до следующей поставки [Единиц];

Gi – количество дней до i-той отгрузки, ожидаемой от поставщика по графику предстоящих отгрузок [Дней];

Ci – спрос по позиции за i-тую дату [Единиц].

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

, где:

U1 – количество по позиции, необходимое для удовлетворения спроса остатками на необходимом уровне до следующей поставки;

C1j – j-тая сумма спроса по позиции за количество дней до следующей поставки [Единиц];

N – необходимый уровень удовлетворения спроса остатками по позиции [%].

Тогда объём заказа по позиции будет равен:

, где:

X – необходимый заказ для удовлетворения спроса остатками на нужном уровне до следующей поставки объём заказа по позиции [Единиц];

K – кратность отгрузок по позиции, которая рассчитывается как наибольший общий делитель по всем отгрузкам клиентам компании или задаётся из кратности отгрузок по позиции у поставщика [Единиц];

U1 – количество по позиции, необходимое для удовлетворения спроса остатками на необходимом уровне до следующей поставки;

B – текущие остатки по позиции с транзитами и за вычетом оплаченных резервов [Единиц];

J – коэффициент округления, который задаёт направление округления [0?1]. В данной формуле первое слагаемое в скобках отвечает за тот объём в рассчитанном заказе по позиции (U1 – B), который уже удовлетворяет условию кратности. Второе же слагаемое позволяет округлить в нужную сторону ту часть заказа, которая не удовлетворяет условию кратности. Коэффициент же округления J напрямую задаёт ту границу, выше которой мы округляем вверх, и соответственно может принимать любое значение от 0 до 1 (при J = 0 мы всегда округляем вверх; при J = 1 – всегда вниз; в случае если J = 0.5, осуществляется стандартное арифметическое округление).

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

значение необходимого заказа Х;

свободные остатки B;

текущие остатки, резервы и оплаченные резервы;

средний спрос ;

критические минимум m и максимум M;

кратность отгрузок К;

количества, определяющие точку заказа и объём дозаказа U0 и U1;

срок производства I;

закупочная цена Z и необходимый уровень удовлетворения спроса остатками N, – а также для каждого поставщика:

период между поставками Т;

время доставки L;

ожидаемые даты поставок G0 и G1;

необходимые и фактические оборачиваемость О и/или прибыльность Р.

На основании этого отчёта, сделанного по конкретному поставщику, рекомендуется иметь возможность автоматически создавать документ заказа этому поставщику по этим позициям в этих количествах (Х) – это позволит избежать лишних ошибок при набивании заказа вручную, а так же избавит сотрудников от лишней рутинной работы.

ИТОГ.

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

Ниже приведена таблица, которая поможет предварительно прикинуть, какая модель лучше подходит в вашем конкретном случае:

Список литературы

http://upravlenie-zapasami.ru