Прогнозирование редких продаж. Метод Виллемейна.

Что плохого в методе Кростона?

Дело в том, что во-первых, он подразумевает нормальность распределения размера покупки. Во-вторых, для адекватных результатов это распределение должно иметь невысокую дисперсию. В-третьих, хоть это и не так смертельно, применение экспоненциального сглаживания для нахождения характеристик распределения неявно подразумевает нестационарность процесса.

Ну да бог с ним. Для нас самое важное - реальные продажи даже близко не выглядят нормальными. Именно эта мысль сподвигла Виллемейна (Thomas R. Willemain) и компанию к созданию более универсального способа. А потребность в таком методе была продиктована чем? Правильно, необходимостью прогнозировать потребность в запасных частях, в особенности в автомобильных запчастях.

Метод Виллемейна.

Суть подхода состоит в применении процедуры бутстраппинга (bootstrapping). Словечко это родилось из старой поговорки "pull oneself over a fence by one's bootstraps", что почти буквально соответствует нашему "вытащить себя за собственные волосы". Компьютерный термин boot, кстати, тоже отсюда. И смысл этого слова в том, что некая сущность содержит в себе необходимые ресурсы, чтобы саму себя перевести в другое состояние, и при необходимости такую процедуру возможно запустить. Именно такой процесс происходит с компьютером, когда мы нажимаем на определенную кнопку.

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

По условиям нашей задачи время реакции системы 7 дней. Мы НЕ знаем и НЕ ПЫТАЕМСЯ предположить вид и параметры кривой распределения.
Вместо этого мы из всего ряда 7 раз случайно "выдергиваем" дни, суммируем продажи этих дней и записываем результат.
Повторяем эти действия, каждый раз записывая сумму продаж за 7 дней.
Желательно произвести опыт достаточно много раз, чтобы получить наиболее адекватную картинку. 10 - 100 тысяч раз будет очень неплохо. Здесь очень важно, чтобы дни выбирались случайно РАВНОМЕРНО во всем анализируемом диапазоне.
В итоге мы должны получить "как бы" все возможные исходы продаж ровно семи дней, причем с учетом частоты появления одинаковых результатов.

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

Поскольку у меня продажи штучного товара, т.е. размер покупки всегда целое число, то я и не разбивал на отрезки, оставил как есть. Высота столбика соответствует доле общих продаж.
Как видим, правая, "ненулевая" часть распределения не напоминает нормальное распределение (сравните с зеленым пунктиром).
Теперь на основании этого распределения несложно рассчитать уровни обслуживания, соответствующие разному размеру запаса (SL1, SL2). Так что, задав целевой уровень сервиса, сразу получаем потребный запас.

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

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


 

Напоследок (в очередной уже раз) хочется спросить: "а почему мы уровень обслуживания основываем на ABC-анализе?" Казалось бы, в нашем случае оптимальный уровень сервиса первого рода составляет 91% вне зависимости от того, в какой из групп товар находится. Тайна сия велика есть...

Прикольно, оказывается, я придумал и реализовал у одного из своих клиентов метод Виллемйна - спасибо за науку! ;) Только я в своей модели, которую описал в статье "уровень логистического сервиса" - суммировал как раз подряд идущие дни, чтобы учесть возможную зависимость продаж в соседние дни. Ведь, эта зависимость - есть: если у нас есть один крупный клиент, который приходит к нам примерно раз в месяц и выбирает ощутимо больше остальных, то зачем нам состалять вероятность того, что этот клиент придёт семь раз подряд?..

In reply to by RazVal

Валера, это запланировано на следующую статью :)

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

День добрый.

меня заинтерисовал этот метод, я попробовал его на своих данных. полученные результаты в приложенном файле. я попробовал построить несколько частотных распределений на разное количество дней. если честно, то результат меня удивил, поэтому здесь и пишу.
первое что меня удивило, почему при прогнозе от 2-х до 6-ти дней максимальное количество не меняется, всегда 4, почему так ?
второе это то, что при увеличении количества дней распределение превращается в "нормальное", разве оно не должно оставаться постоянным ?

Книга1.xls

In reply to by rawman

первое что меня удивило, почему при прогнозе от 2-х до 6-ти дней максимальное количество не меняется, всегда 4, почему так?

второе это то, что при увеличении количества дней распределение превращается в "нормальное", разве оно не должно оставаться постоянным?

То, что при увеличении количества дней распределение превращается в "нормальное" - это статистический закон, поэтому все математики и изучают именно нормальные распределения - типа всё равно всё к нему сводится. По поводу же максимального количества для 2-х и 6-ти дней - вы неправильно просуммировали: за 2 подряд идущих дня у вас максимум потребляется 6 единиц, а за 6 подряд идущих дней - 11 единиц данной продукции.